[英]POST Request with raw body always giving me 400 Bad Request
我正在嘗試開發來自 webhook 的響應。 但截至目前,php 代碼總是向我返回 400 錯誤請求。 我正在嘗試使用 Postman 模擬 webhook。 請看下圖。
我希望有人可以幫助我並分析哪一部分是錯誤的。 蒂亞
這是我的代碼(zpostget.php)
<?php
$json = file_get_contents('php://input');
$body = json_decode($json, true);
if (is_null($body) or !isset($body['eventName'])) {
header('HTTP/1.1 400 Bad Request');
return;
}
switch ($body['eventName']) {
case 'shippingrates.fetch':
break;
}
header('HTTP/1.1 200 OK');
?>
因為,我不確定你的 json 數據,首先打賭它是格式錯誤的 json 但是因為你的var_dump($json)
看起來像 json 我會假設一切都好。 這里有一些工具可以確保
json_decode($json, true, 512, JSON_THROW_ON_ERROR);
var_dump($json) 給出 NULL
那么你的 json 格式錯誤
無關,但我也建議使用||
而不是or
。
最后一件事是檢查 if 的哪一部分失敗:所以var_dump(is_null($body))
和var_dump(!isset($body['eventName']))
並檢查什么是假的。
你能分享整個 json 嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.