如何在flutter中将json body发布到php API?

xxb16uws  于 2023-10-22  发布在  Flutter
关注(0)|答案(2)|浏览(126)

我试着像这样将JSON主体发布到PHP API:

var response = await http.post(
   Uri.parse("https://..."),
   body: {
     "orders": [
       {"id": 253, "userId": 13, "quantity": 2, "productId": 1},
       {"id": 257, "userId": 13, "quantity": 1, "productId": 3}
     ]
   });

在API中,我尝试像这样访问变量

$data=$_POST["orders"];
echo $data[0]["id"];

但它总是得到错误未定义的索引有人能帮助我吗?我是个扑翼新手。

rn0zuynd

rn0zuynd1#

如果你传递一个原始数据到你的request,那么你必须在传递之前将encode传递给json。试试下面的代码:

var response = await http.post(
   Uri.parse("https://..."),
   body: jsonEnocde(
       {
         "orders": [
       {"id": 253, "userId": 13, "quantity": 2, "productId": 1},
       {"id": 257, "userId": 13, "quantity": 1, "productId": 3}
     ]
   }
));
afdcj2ne

afdcj2ne2#

您可以在服务器端尝试下一个代码(PHP):

<?php
$request = json_decode(file_get_contents('php://input'), true);

$data=$request["orders"];
echo $data[0]["id"];

相关问题