c++ - 在 IIS ISAPI 筛选器中设置自定义 header 值

标签 c++ iis isapi

我有一个 ISAPI 过滤器,用于为我的 CMS 进行 URL 重写。我正在处理 SF_NOTIFY_PREPROC_HEADERS 通知,并尝试执行此操作:

DWORD ProcessHeader(HTTP_FILTER_CONTEXT *con, HTTP_FILTER_PREPROC_HEADERS *head)
{
    head->SetHeader(con, "test1", "aaa");
    con->AddResponseHeaders(con, "test2:bbb\r\n", 0);
    return SF_STATUS_REQ_NEXT_NOTIFICATION;
}

但是,我似乎无法使用经典 ASP 或 PHP 中的服务器变量或响应 header 读取这些值。缺少值。我期望出现“test1”或“test2” header 值,但它们没有出现。我在这里做错了什么吗?

最佳答案

我终于弄清楚了,我在标题名称中缺少一个“:”:

DWORD ProcessHeader(HTTP_FILTER_CONTEXT *con, HTTP_FILTER_PREPROC_HEADERS *head)
{
    head->SetHeader(con, "test1:", "aaa");
    return SF_STATUS_REQ_NEXT_NOTIFICATION;
}

现在创建一个名为“HTTP_TEST1”的服务器变量。

关于c++ - 在 IIS ISAPI 筛选器中设置自定义 header 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2471892/

相关文章:

tomcat - 使 Tomcat 9 忽略 Http 基本信息

iis-7 - ISAPI 扩展在 IIS7 上给出 404

c++ - 填充指向 vector 的指针 vector 会产生奇怪的结果

c++ - 如何在 C++ 中读取由要读取的字符数定义的文件段?

c# - 使用复杂的 GUI 编写跨平台应用程序

c++ - Homebrew 软件安装 g++ 4.7 不工作

jquery - 移动到本地 IIS 后,CSS 和脚本链接不再有效

asp.net - IIS 线程 100%,执行转储但不知道如何继续

Azure应用服务: how to add custom Handler mapping to process TXT files?

coldfusion - IIS 7.5 URL 重写不起作用