首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在PHP CURL中从POST切换到GET

如何在PHP CURL中从POST切换到GET
EN

Stack Overflow用户
提问于 2009-08-04 01:50:11
回答 4查看 262.3K关注 0票数 90

我已尝试从先前的Post请求切换到Get请求。它假设它是一个Get,但最终做了一个post。

我在PHP中尝试了以下操作:

代码语言:javascript
复制
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, null);
curl_setopt($curl_handle, CURLOPT_POST, FALSE);
curl_setopt($curl_handle, CURLOPT_HTTPGET, TRUE);

我遗漏了什么?

附加信息:我已经建立了一个连接来执行POST请求。这成功完成了,但稍后当我尝试重用连接并使用上面的setopts切换回GET时,它仍然在内部执行POST,但POST标头不完整。问题是,它认为它正在进行GET,但最终放置了一个没有content-length参数的POST头,连接失败并返回了411错误。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-08-04 18:56:53

解决:问题出在这里:

我通过_CUSTOMREQUEST_POST设置了POST_CUSTOMREQUEST保持为POST,而_POST切换为_HTTPGET。服务器认为来自_CUSTOMREQUEST的报头是正确的,并返回一个411。

代码语言:javascript
复制
curl_setopt($curl_handle, CURLOPT_CUSTOMREQUEST, 'POST');
票数 41
EN

Stack Overflow用户

发布于 2012-05-04 14:20:54

在调用curl_exec($curl_handle)之前添加此代码

代码语言:javascript
复制
curl_setopt($curl_handle, CURLOPT_CUSTOMREQUEST, 'GET');
票数 55
EN

Stack Overflow用户

发布于 2017-01-17 08:36:48

CURL请求默认情况下是GET,您不需要设置任何选项来发出GET CURL请求。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1225409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档