V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
MyFaith
V2EX  ›  问与答

这种格式的 POST 请求怎么模拟提交?

  •  
  •   MyFaith · 2018-06-10 20:22:32 +08:00 · 1831 次点击
    这是一个创建于 2347 天前的主题,其中的信息可能已经有所发展或是发生改变。
    POST http://appapi2.gamersky.com/v2/AllChannelList HTTP/1.1
    Content-Type: text/plain; charset=utf-8
    Content-Length: 223
    Host: appapi2.gamersky.com
    Connection: Keep-Alive
    Accept-Encoding: gzip
    User-Agent: okhttp/3.3.0
    
    {"os":"android","app":"GSAPP","osVersion":"8.1.0","deviceType":"MI 8","appVersion":"4.1.1","deviceId":"867252032615972","request":{"nodeIds":"16","pageIndex":"1","elementsCountPerPage":"20","parentNodeId":"news","type":""}}
    HTTP/1.1 200 OK
    Cache-Control: private
    Content-Type: application/json; charset=utf-8
    Server: Microsoft-IIS/7.5
    X-AspNetMvc-Version: 5.2
    X-AspNet-Version: 4.0.30319
    X-Powered-By: ASP.NET
    Date: Sun, 10 Jun 2018 11:57:48 GMT
    Content-Length: 12975
    

    请求参数中 request 的值是一个 json 对象,如何模拟?所有参数都是 request body 吗?

    {"os":"android","app":"GSAPP","osVersion":"8.1.0","deviceType":"MI 8","appVersion":"4.1.1","deviceId":"867252032615972","request":{"nodeIds":"16","pageIndex":"1","elementsCountPerPage":"20","parentNodeId":"news","type":""}}
    
    4 条回复    2018-06-10 20:43:19 +08:00
    ioven
        1
    ioven  
       2018-06-10 20:26:49 +08:00
    j = {"os":"android","app":"GSAPP","osVersion":"8.1.0","deviceType":"MI 8","appVersion":"4.1.1","deviceId":"867252032615972","request":{"nodeIds":"16","pageIndex":"1","elementsCountPerPage":"20","parentNodeId":"news","type":""}}
    r = request.post('http://httpbin.org/post', json=j)
    print(r.json())
    MyFaith
        2
    MyFaith  
    OP
       2018-06-10 20:38:30 +08:00
    @ioven 谢谢,成功了,但是这个参数如果用 request body 的话,为什么会失败呢?这些参数是什么参数
    Lullaby
        3
    Lullaby  
       2018-06-10 20:39:04 +08:00
    跟普通的 post 一样,只是 content-type 是 text/plain,内容放在 body 里,postman 里叫 raw,fiddler 里叫 TextView
    chinvo
        4
    chinvo  
       2018-06-10 20:43:19 +08:00
    @Lullaby #3 错了,是 application/json
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3234 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:38 · PVG 08:38 · LAX 16:38 · JFK 19:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.