教程集 www.jiaochengji.com
教程集 >  脚本编程  >  php  >  正文 PHP接口--curl请求导致接收到报文不完整解决办法

PHP接口--curl请求导致接收到报文不完整解决办法

发布时间:2021-01-01   编辑:jiaochengji.com
教程集为您提供PHP接口--curl请求导致接收到报文不完整解决办法等资源,欢迎您收藏本站,我们将为您提供最新的PHP接口--curl请求导致接收到报文不完整解决办法资源
本篇文章的主要内容是关于PHP接口问题,当head头的编码与body报文编码不一致,curl请求导致接收到的报文不完整,感兴趣的朋友可以了解一下。

问    题:

    比如某次对接过程中,对方返回的head头是gbk编码(Content-type: text/xml; charset=GBK),但是body里面的报文是UTF-8编码,导致返回的报文不完整

详细描述:

    具体原因是因为GBK编码,一个中文字符是占用两个字节,而UTF-8编码一个中文字符是占用三个字节,curl请求响应回来的字符长度是按照GBK编码计算的,导致计算出来的报文字符长度是小于实际长度的,所以读取响应数据的时候,读到计算出来的长度时候就停止了,也就会出现返回的报文不完整情况

解决方案:

    不采用curl方法进行请求,改用file_get_contents方法,因为file_get_contents不会返回head信息,所以不会出现编码不一致的情况

相关教程:PHP视频教程

以上就是PHP接口--curl请求导致接收到报文不完整解决办法的详细内容,更多请关注教程集其它相关文章!

  • 本文转载于:博客园,如有侵犯,请联系jquerycn@qq.com删除
  • 您可能感兴趣的文章:
    PHP接口--curl请求导致接收到报文不完整解决办法
    php curl post 时出现问题的解决方法
    php中curl实现GET和POST请求抓取网页或上传文件
    php cURL https链接报错:Unknown SSL protocol error in connection to
    php curl中x-www-form-urlencoded与multipart/form-data 方式 Post 提交数据详解
    php报500错误
    php curl发送请求详细教程
    php获取http状态码程序代码
    php中curl、fsocket、file_get_content函数比较
    php中在虚拟机环境下使用xdebug注意事项

    [关闭]
    ~ ~