- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试开发一个非常基本的网络服务器,其中每个页面都受到保护,但身份验证是通过单独的套接字连接/协议(protocol)完成的。
我正在尝试使用 libmicrohttpd 来实现此目的,我希望最终得到的过程是:
首次连接时显示着陆页
所有链接页面的请求都会生成 http 102 消息(以避免使用 http 403 消息进行身份验证请求并在处理身份验证请求时超时)
带外身份验证过程独立于网络服务器启动和运行
当身份验证过程返回时,根据结果发送适当的消息
我对这个级别的 libmicrohttpd 和 http 开发有点陌生,我原以为我可以发送带有 102 状态代码的响应
ret = MHD_queue_response (connection, MHD_HTTP_PROCESSING, response);
然后稍后在同一函数调用中发送在 MHD_HTTP_OK
中更改的最终响应。但是,即使我将两个响应放入队列中,中间没有其他处理(或有一些任意延迟),客户端也永远不会收到第二个响应,并且最终会超时。
我想知道:
作为引用,我的守护进程设置了最基本的选项(来自第一个教程示例):
daemon = MHD_start_daemon (MHD_USE_SELECT_INTERNALLY, port, NULL,
NULL, &generate_page, NULL, MHD_OPTION_END);
如果我只是在响应中提供 html 文件,那么一切都会正常。
任何和所有的建议都会受到赞赏 - 即使它是告诉我该去哪里。
最佳答案
主要问题是,我试图在对 MHD_queue_response 的两次调用中重复使用相同的响应,即使由于 http 102,客户端浏览器上实际上没有显示任何内容。因此,当我尝试对实际响应进行排队时http 200 MHD 已经删除了我试图访问的响应,这可以通过使用虚拟响应或使响应持久化来解决。
关于c - 基于 libmicrohttpd 的服务器,具有带外身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40791988/
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 5 年前。
我正在使用 libmicrohttpd ( http://www.gnu.org/software/libmicrohttpd/ ) 来实现一个服务器,该服务器从客户端(一个 HTML 页面)接受一个
我正在尝试编译硅网络服务器 hello world example在 FreeBSD 10.2 RELEASE 上使用 clang++38。该框架使用c++14。我已经安装了 libmicrohttp
我正在尝试开发一个非常基本的网络服务器,其中每个页面都受到保护,但身份验证是通过单独的套接字连接/协议(protocol)完成的。 我正在尝试使用 libmicrohttpd 来实现此目的,我希望最终
在使用外部事件循环时,libmicrohttpd 中的 MHD_suspend_connection() 和 MHD_resume_connection() 遇到了一些问题。之后我在下面写了一个小例子
我在整个互联网上都查找过这个问题,但似乎不是反复出现的错误。 当我尝试使用包含 lib 的主文件 g++ 编译(我正在 Ubuntu 12.04 发行版上工作)时,问题就来了,它获取了除 MHD_RE
我正在尝试创建一个服务器,它将以非英语语言提供页面,并且我正在使用以下代码测试 libmicrohttpd: static int answer_to_connection(void* cls, st
我要编译Libmicrohttpd 0.9.34到 DLL(带有 .lib),我可以在我的应用程序中使用它。有这方面的指南吗?谢谢! 最佳答案 Libmicrohttpd 的 tar 文件不包含 Wi
我想要实现的是: 向请求 somedoc.html 的客户端发送 http 102 一些侧面处理,包括带外身份验证 如果经过身份验证,则发送从 somedoc.html 构建的响应,否则通用非身份验证
我需要创建一个通过 HTTP 公开某些功能的 C++ 程序。出于这个原因,我试图使用 libmicrohttpd对于相同的。现在这个库是用 C 编写的。但是我是 C++ 的新手,我正在尝试编译给出的
我必须使用 libmicrohttpd 来设置 REST 服务器。 GET请求没有问题,但我不明白我在处理POST(实际上是PUT)请求(JSON格式)时做错了什么。这是代码: int MHD_ans
我正在使用 libmicrohttpd 库,我需要在正文中发送带有一个字符串参数的 POST 请求。谁能告诉我如何使用 libmicrohttpd 创建 POST 请求(我是 Java 专家,这个 C
我想知道如何在 C 中使用 libmicrohttpd 实现 302 重定向。我知道响应应该是 MHD_HTTP_FOUND 但我不确定如何传递要重定向的 Location:...。我已经搜索过,但没
当我使用 std::string 的 data() 发送我的 html 时,一些垃圾被发送到字符串的开头: 工作正常: const char* html2 = "Free for person
我是一名优秀的程序员,十分优秀!