我有一个python脚本,应该将文件上传到php脚本。
的Python
import requests
file={'file':('text.txt','hello')}
url='mywebsite.org/test.php
response = requests.post(url, files=file)
print(response.text)
PHP
<?php
var_dump($_FILES);
var_dump($_POST);
?>
这是我对python脚本的响应:
array(0){
}
array(0){
}
但是,当我尝试发布到http://httpbin.org/post时,
我得到了
...
“files”:{
“file”:“你好”
},
...
这似乎表明我的服务器出了问题。可能是什么问题?
答案 0 :(得分:1)
你的python代码似乎有问题 - 目前你不发送文件,因为它没有打开。假设您的text.txt
包含1234
。将其发布到http://httpbin.org/post,如下所示:
import requests
file={'file':(open('text.txt','r').read())}
url='http://httpbin.org/post'
response = requests.post(url, files=file)
print(response.text)
我们得到以下回复:
...
"files": {
"file": "1234"
},
...
如果你想添加一些额外的参数,你可以这样做:
values = {'message': 'hello'}
response = requests.post(url, files=file, data=values)