当前位置: 首页 > 面试题库 >

在PHP中使用cURL进行RAW POST

澹台硕
2023-03-14
问题内容

如何使用cURL在PHP中进行RAW POST?

未经处理的原始帖子没有任何编码,我的数据存储在字符串中。数据应采用以下格式:

... usual HTTP header ...
Content-Length: 1039
Content-Type: text/plain

89c5fdataasdhf kajshfd akjshfksa hfdkjsa falkjshfsa
ajshd fkjsahfd lkjsahflksahfdlkashfhsadkjfsalhfd
ajshdfhsafiahfiuwhflsf this is just data from a string
more data kjahfdhsakjfhsalkjfdhalksfd

一种选择是手动编写要发送的整个HTTP标头,但这似乎不太理想。

无论如何,我是否可以仅将选项传递给curl_setopt(),这些选项表示使用POST,使用文本/纯文本以及从中发送原始数据$variable


问题答案:

我刚刚找到了解决方案,可以回答我自己的问题,以防其他人偶然发现它。

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL,            "http://url/url/url" );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POST,           1 );
curl_setopt($ch, CURLOPT_POSTFIELDS,     "body goes here" ); 
curl_setopt($ch, CURLOPT_HTTPHEADER,     array('Content-Type: text/plain'));

$result=curl_exec ($ch);


 类似资料:
  • 我尝试在php中运行curl命令使用exec方法,它在我的Linux服务器中运行良好,但在我的Windows机器中不工作,我也检查了我的PHP配置文件,在那里启用了curl。它不起作用的问题是什么? 我的命令是(一个用于Linux的命令,这个命令在那里成功运行)“curl-u admin:geoserver-XPUT-H”Content type:image/tiff”--data binary@

  • 我需要为OAuth2.0获取access_token和refresh_token来访问Google API,下面的php脚本应该返回一个带有access_token和refresh_token的json,如下所示: 但是,php脚本只返回这个错误消息:

  • 本文向大家介绍php中curl使用指南,包括了php中curl使用指南的使用技巧和注意事项,需要的朋友参考一下 许多同学在第一次使用curl的时候感觉一个头两个大(包括我在内),看着这一条条的curl_setopt函数完全摸不着头脑,不过在你花10分钟看了我的介绍后相信你以后也能轻松戏耍php的curl了 首先,请看一个curl代码(花10秒钟,略看一遍,然后跳到后文) WTF,这到底是在做什么?

  • 问题内容: 我正在用PHP构建一个REST Web服务客户端,此刻我正在使用curl来向该服务发出请求。 如何使用curl发出经过身份验证的请求(http基本)?我必须自己添加标题吗? 问题答案: 你要这个: Zend有一个REST客户端和zend_http_client,我敢肯定PEAR有某种包装。但是它很容易自己完成。 因此,整个请求可能如下所示:

  • 问题内容: 我对cURL很陌生,所以我已经为这个问题苦苦挣扎了好几个小时。我正在尝试使用cURL在iframe中下载网站的源代码,并在加载时显示其中已加载了多少。到目前为止,我已经成功下载了源代码,但未显示加载进度。您能解释一下如何显示下载进度吗?如果没有cURL,我将逐字节读取文件,然后将下载的字节总数除以文件的总大小。由于cURL会整体读取源代码,因此该如何在cURL中完成?(至少我认为这是唯

  • 我用扫描,这是结果: 看起来他们只支持ECDHE,从的输出来看,没有ECDHE密码!所以我的问题是如何使用PHP CURL客户端连接到远程服务器? 这是我的示例PHP代码,它返回false并返回消息: “列表中的未知密码:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128