开发者社区 问答 正文

Token 服务公共返回值怎么计算?


HTTP 请求到达认证服务器后,正常处理后会返回给调用方响应,类型是 JSON 字符串,调用方可根据需求取出 JSON 特定的值。
JSON 字符串的 Key-Value 映射如下:

Key类型说明
successboolean是否成功。
messageString处理结果信息,或者异常描述。
codeint返回码,可根据 code 判断当前请求处理情况或者错误类型。
tokenDataStringToken 字符串,申请 Token 的接口会返回该值。

其中,错误码列表如下:
Code说明
200成功
400参数校验错误
407签名计算错误
409Token 生成处理错误
410Token 吊销处理失败
[tr=rgb(239, 251, 255)][td]1 伪造 Token,不可解析 2Token 已经过期 3Token 已经被吊销

展开
收起
猫饭先生 2017-10-27 10:41:40 1490 分享 版权
阿里云 AI 助理回答

基于您提供的信息,当调用方收到HTTP响应并处理JSON格式的返回数据时,可以按照以下步骤操作来解析和判断请求的结果:

步骤1:解析JSON响应

首先,调用方需要将接收到的JSON字符串解析成可操作的数据结构。在大多数编程语言中,都有相应的库或方法来实现这一功能。例如,在JavaScript中可以使用JSON.parse()方法,Python中可以使用json.loads()函数。

步骤2:检查success字段

  • 如果success字段为true,表示请求成功处理。
  • 如果为false,则需进一步查看message字段了解失败原因,并根据code字段判断具体的错误类型。

步骤3:根据code处理不同情况

  • 200:成功,此时如果业务逻辑需要,可以从响应中取出其他有用信息,如tokenData
  • 400:参数校验错误,检查请求参数是否符合要求。
  • 407:签名计算错误,这通常意味着请求中的签名与服务器计算的不匹配,需要检查签名算法的实现。
  • 409:Token生成处理错误,可能是服务器端问题,或者请求参数与Token生成逻辑不符。
  • 410:Token吊销处理失败,如果业务流程中有涉及Token吊销,需关注此错误。
  • 其他错误码(如您提到的关于Token的错误),需要具体分析:
    • 伪造 Token,不可解析:确保Token传递正确且格式无误。
    • Token已经过期:需要重新获取Token。
    • Token已经被吊销:同样需要重新获取Token。

实际操作示例(以JavaScript为例):

let response = '{"success":false,"message":"参数错误","code":400}'; // 假设这是从服务器得到的响应
let data = JSON.parse(response);

if(data.success) {
    console.log("请求成功,Token:", data.tokenData);
} else {
    console.error("请求失败,错误信息:", data.message, "错误码:", data.code);
    switch(data.code) {
        case 400:
            console.log("请检查输入参数");
            break;
        case 407:
            console.log("签名计算错误,请检查签名算法");
            break;
        // 其他错误码处理...
    }
}

通过上述步骤,调用方可以根据返回的JSON内容做出相应的处理逻辑,确保程序能够正确地响应服务器的不同反馈。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答
问答分类:
问答地址: