Cocos2d-x中libcurl库的使用(6)HTTP消息头

Cocos2d-x中libcurl库的使用(6)HTTP消息头,第1张

概述1、消息头 当libcurl发送Http请求时,会自动添加一些http头,通过CURLOPT_HTTPHEADER属性手动替换、添加或删除响应的HTTP消息头 1)、Host:http1.1版本都要求客户端提供这个消息头 2)、Pragma:"no-cache"表示不要缓冲数据。 3)、Accept:"*/*":表示允许接收任何类型的数据 4)、Expect:以Post的方式向HTTP服务器提交请 1、消息头

当libcurl发送http请求时,会自动添加一些http头,通过CURLOPT_httpheader属性手动替换、添加或删除响应的http消息头

1)、Host:http1.1版本都要求客户端提供这个消息头

2)、Pragma:"no-cache"表示不要缓冲数据。

3)、Accept:"*/*":表示允许接收任何类型的数据

4)、Expect:以Post的方式向http服务器提交请求时,lib curl会设置该消息头为"100-continue",它要求服务器在正式处理该请求之前,返回一个"OK"消息,如果Post的数据很小,libcurl可能不会设置该消息头。

2、自定义请求:Customrequest

http支持get、head、post提交请求,可以设置CURLOPT_CUSTomrEQUEST来设置自定义的请求方式。lib curl默认以get方式提交请求。curl_easy_setopt(easy_handle,CURLOPT_CUSTomrEQUEST,"XXX");

3、修改消息头 http协议允许我们自定义消息头,请求消息头的作用是告诉服务器如何处理请求,响应消息头则告诉浏览器如何处理接收到的数据,在libcurl中,你可以自由得添加这些消息头。如下: struct crul_sList* headers = NulL;//init to NulL heasers = curl_sList_append(headers,"hey-server-hey:how are you?"); headers = curl_sList_append(headers,"X-silly-content:yes"); curl_easy_setopt(easy_handle,CURLOPT_httpheader,headers); curl_easy_perform(easy_handle); curl_sList_free_all(headers) 对于已经存在的消息头,可以重新设置它的值。 headers = curl_sList_append(headers,"Accept:Agent-007"); headers = curl_sList_append(headers,"Host:munged.host.line"); 对于已经存在的消息头,可以设置它为空,libcurl在发送请求时就不会同时提交该消息头:headers = curl_sList_append(headers,"Accept:"); 总结

以上是内存溢出为你收集整理的Cocos2d-x中libcurl库的使用(6)HTTP消息头全部内容,希望文章能够帮你解决Cocos2d-x中libcurl库的使用(6)HTTP消息头所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/1022312.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-23
下一篇2022-05-23

发表评论

登录后才能评论

评论列表(0条)

    保存