• REST Client实际应用记录


    请求Content-Type为application/x-www-form-urlencoded

    先来看一个完整示例:

    ##############
    ### qa问答
    
    @msg="糖尿病患者应该如何安排饮食?"
    POST {{beta}}/chat/qa HTTP/1.1
    Authorization:Bearer {{login_app_access_token}}
    Content-Type: application/x-www-form-urlencoded
    
    msg={{msg}}
    
    ##############
    

    这里,请求的Content-Type设置的是application/x-www-form-urlencoded,这里之前使用json格式,但是一直无法成功,后来修改为application/x-www-form-urlencoded,运行正确。

    第一行:post请求的url;第二行是请求的验证信息;第三行请求头信息格式;最后一行请求参数信息

    要注意的地方

    1. 请求文本最后面需要有一个空行,或者一个 # 开头的行,建议空行,这样多个请求看起来会非常好看、
    2. 请求参数和Content-Type之前一定要空一行,不然会出错
    3. 如果需要把 form 类型的参数拆分为多行,那么第二个参数开始必须以 & 开始
    4. GET 请求也可以将参数拆分多行,每行开头必须以 ? 或者 & 开始

    请求Content-Type为application/json

    直接上示例:

    ### sport运动种类识别
    
    POST {{beta}}/np/v1.0/parse-unit HTTP/1.1
    Authorization:Bearer {{login_app_access_token}}
    Content-Type: application/json
    
    {
        "msg":"跑步半个小时",
        "types":"sport",
        "weight":"60"
    }
    
    ##############
    

    这里请求的格式是json格式,多个参数之间,分割,如上。

    关联

    如果每一个请求的接口的头信息中需要登录的token信息,需要怎么实现了,rest也提供了很好的解决办法,可以在结果返回中取得相应结果中的token信息。

    先来看一下响应结果是怎么格式的?

    {
      "access_token": "26c14f94-7d0e-422e-a645-1bcc7ffef0b8",
      "token_type": "bearer",
      "refresh_token": "354cabc0-a667-44a0-9bc2-cab1f8a58b55",
      "expires_in": 3599,
      "scope": "READ WRITE"
    }
    

    具体代码如下

    @login_app_access_token={{login_app.response.body.$.access_token}}
    
    

    这里的话,我们可以在下一个接口中直接使用这个变量login_app_access_token,如上图中的代码

    Authorization:Bearer {{login_app_access_token}}
    

    这里涉及到3个接口,完整代码如下

    @Basic=asafadaeadafoeiadalfdajflew0sdafdsafw-0a-sdfas==
    @app_phone=15612305820
    @app_password=12345678
    @grant_type=password
    @beta=https://localhost
    ### app登录,beta
    # @name login_app
    POST {{beta}}/oauth2/token
    Content-Type: application/x-www-form-urlencoded
    Authorization:Basic {{Basic}}
    
    username={{app_phone}}
    &password={{app_password}}
    &grant_type={{grant_type}}
    &sms_verify=true
    &appName=Task_beta
    
    @login_app_access_token={{login_app.response.body.$.access_token}}
    ################ 食物识别接口 ###############
    ### 食物识别
    
    POST {{beta}}/np/api/v1.0/detect  HTTP/1.1
    Authorization:Bearer {{login_app_access_token}}
    Content-Type: application/json
    
    {
        "msg":"饺子"
    }
    
    ##############
    ### qa问答
    
    @msg="糖尿病患者应该如何安排饮食?"
    POST {{beta}}/chat/qa HTTP/1.1
    Authorization:Bearer {{login_app_access_token}}
    Content-Type: application/x-www-form-urlencoded
    
    msg={{msg}}
    
    ##############
    ### sport运动种类识别
    
    POST {{beta}}/np/v1.0/parse-unit HTTP/1.1
    Authorization:Bearer {{login_app_access_token}}
    Content-Type: application/json
    
    {
        "msg":"跑步半个小时",
        "types":"sport",
        "weight":"60"
    }
    
    ##############
    

    到这里,使用rest基本完成了,如果还有其他需要,可以参考VSCode 小鸡汤 第01期 - REST Client 简单好用的接口测试辅助工具

  • 相关阅读:
    hdu 4027 Can you answer these queries?
    hdu 4041 Eliminate Witches!
    hdu 4036 Rolling Hongshu
    pku 2828 Buy Tickets
    hdu 4016 Magic Bitwise And Operation
    pku2886 Who Gets the Most Candies?(线段树+反素数打表)
    hdu 4039 The Social Network
    hdu 4023 Game
    苹果官方指南:Cocoa框架(2)(非原创)
    cocos2d 中 CCNode and CCAction
  • 原文地址:https://www.cnblogs.com/LOVEYU/p/11672601.html
Copyright © 2020-2023  润新知