cosoocosoo 2022-05-31 02:06 采纳率: 0%
浏览 78
已结题

Ubuntu shell 里面,curl 命令用POST 请求 JSON, 老是返回bad request,看起来是参数错了,但是检查好几遍没发现错在哪…

以下代码老是报错400,bad request.

Curl -H "Authorization: Bearer yeirorfjfjfkfkfjfkeifchdjd" -H "Content_Type: application json" -d '{"awbNo": "4444444444"}' http://abccom

实在看不出哪里有错?

  • 写回答

3条回答 默认 最新

  • 偷拨网线的william 2022-05-31 08:02
    关注

    如果要在 a 中传递数据,curl则需要将参数格式化为查询字符串。它不会为您解码 JSON。你有几个选择,
    修复卷曲:
    (注意,我对每个参数都进行了编码)
    重新格式化 curl 以使用 GET 参数:

    curl 'http://127.0.0.1:5000/?query=SELECT%20COUNT(*)%20FROM%20usage'
    
    

    按预期将 curl 重新格式化为 POST:

    
    

    curl -H "Content-Type: application/json" -X POST http://127.0.0.1:5000/ -d 'query=SELECT%20COUNT(*)%20FROM%20usage'

    
    

    这将让您在编写时获得上面的数据。
    解析 JSON
    这将让您在编写 cURL 时继续使用它:

    # this is the short version, provided by randomir in the comments.
    query = request.json().get('query')
    
    # This is an alternative which roughly does the same thing
    dat_str = request.data
    dat_dict = json.loads(dat_str)
    query = dat_dict['query']
    
    
    
    评论

报告相同问题?

问题事件

  • 系统已结题 6月8日
  • 赞助了问题酬金10元 5月31日
  • 修改了问题 5月31日
  • 创建了问题 5月31日

悬赏问题

  • ¥100 需要跳转番茄畅听app的adb命令
  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证