Larry977 2022-01-29 11:20 采纳率: 50%
浏览 104
已结题

Python发送post请求报错参数不是一个数组,如何解决?

问题遇到的现象和发生背景

接口这个logistics_attributes字段的数据类型是array,我用python调用这个接口传参的时候报错不是数组。后端是PHP
所以原因是啥,要怎么写才对

问题相关代码,请勿粘贴截图
运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

2条回答 默认 最新

  • CSDN专家-showbo 2022-01-29 11:53
    关注

    用urlencode转url键值对在post试试,测试正常,注意加上content-type

    img

    import requests
    from urllib.parse import urlencode
     
    data={'exit_declare_info[]':[{"country":"US","price":"25"}]}
    data=urlencode(data)
     
     
    text=requests.post('https://video.w3dev.cn/x.php',data=data,headers={'content-type':'application/x-www-form-urlencoded'}).text
     
    print(text)
    
    

    x.php

    <?php
    $exit_declare_info=isset($_POST["exit_declare_info"])?$_POST["exit_declare_info"]:array("NO value");
    print_r($exit_declare_info);
    ?>
    
    

    img


    有其他问题可以继续交流~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 2月15日
  • 已采纳回答 2月7日
  • 创建了问题 1月29日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵