【问题标题】:Issuing reading JSON from POST发出从 POST 读取 JSON
【发布时间】:2013-10-21 13:56:10
【问题描述】:

这使用 Python 的请求将 JSON 发布到我的 PHP 服务器

url = 'http://www.domain.com/ex/S/A/R/PW'
payload = {'trackingNo': 'data'}  
headers = {'content-type': 'application/json'}
datas = {'ids': [12, 3, 4, 5, 6]}
r = requests.post(url, data=json.dumps(data), headers=headers)
print(r.text)
print(r.headers)

在 PHP 中,当我尝试 var_dump 时,我得到空值。但我确实收到了回声。

var_dump($_POST[ids]);
var_dump($_POST);
echo "POSTED";

来自 PHP 的回复

NULL
array(0) {
}
POSTED

【问题讨论】:

  • $_POST[ids] 应该是 $_POST['ids'] 开始

标签: php python json post


【解决方案1】:

尝试用PHP编写:

var_dump(json_decode(file_get_contents("php://input")));

【讨论】:

  • 谢谢,它成功了。我不应该在做 $_POST['ids'] 吗?
【解决方案2】:

错字? 我猜你想转储数据

r = requests.post(url, data=json.dumps(datas), headers=headers)

而不是

r = requests.post(url, data=json.dumps(data), headers=headers)

【讨论】:

  • 那是一个错字!但我仍然测试了它。仍为空。 @Alexandr Kapustin 解决方案有效>.
  • 如果您的脚本中也有该错字,而不仅仅是您的帖子中,这将是下一个错误,因为由于错字,您没有发送任何数据:)
猜你喜欢
  • 2014-01-11
  • 2018-07-04
  • 2015-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-01
相关资源
最近更新 更多