Python Post Request可以工作,但同样的PHP(CURL)不能工作

brqmpdu1  于 4个月前  发布在  Python
关注(0)|答案(1)|浏览(73)

我试图通过php写同样的帖子请求,因为我在python.在python中它工作得很好,而在php它甚至没有达到服务器在所有.这是php 7.4.此外,我可以通过浏览器访问服务器http://someip:2080/api/.所以http://someip:2080/api/是一个公共IP,我甚至可以通过浏览器访问,所以它应该从任何地方工作.
PHP代码:

$payload = array(
'data' => 'data0',
);

// Setup cURL
$ch = curl_init('http://someip:2080/api/');
curl_setopt_array($ch, array(
CURLOPT_POST => TRUE,
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json'
),
CURLOPT_POSTFIELDS => json_encode($payload)
));

$response = curl_exec($ch);

if($response === FALSE){
   die(curl_error($ch));
}

字符串
Python代码:

import requests
import json
headers = {'Content-Type': 'application/json'}
resp = requests.post("http://someip:2080/api/" , data = json.dumps(allparams),  headers=headers)
thepara = resp.json()


我不知道什么是错的,我尝试了大约10种方法,使后从php请求和没有工作。

5tmbdcev

5tmbdcev1#

问题是端口2080已经在cpanel上被占用了。所以解决方案是:
1.将端口更改为未占用的9999端口
1.在IPv4端口设置下(在WHM - ConfigServer Security & Firewall中)允许WHM防火墙中的端口,或告诉管理员为您执行此操作。

相关问题