已知php服务器的1.php可以通过外网浏览器访问成功,
python端:
import requests
def send_str_server():
payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.post("http://xxx.xx.xxx.xx:80/car/1.php",
data=payload)
send_str_server();
php端:
$input = file_get_contents('php://input');
var_dump($input);
$arr = json_decode($input,true);
echo $arr['key1'];
php端完全接收不到,打开页面浏览器都不刷新
首先建议你打印一下 python 中得到的返回 r,看看这个返回的code和body是什么。
php服务用于接受请求的web服务一般是 nginx 或者 Apache,都有日志可以查,到对应的日志中查找有没有请求进入。
如果有请求日志,但是结果不对,那么可能是 nginx 把请求转发到php处理的过程没有配置好。
php服务端一般会有个nginx做代理,请检查access.log是否有本次访问。如果有,说明请求已经来到服务端,那基本就是因为你提交post请求的时候没有设置正确的content-Type导致数据无法被服务端正确解析。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。