• (办公)TOKEN


      token就是HTTP认证,输入正确的token,在放在Authorization header中发送给服务器,认证成功。,就可以正确的拿到接口数据.

          举个例子:

      第一步:  客户端发送http request 给服务器, 

      第二步:  因为request中没有包含Authorization header,  服务器会返回一个401 Unauthozied给客户端,并且在Response的 header "WWW-Authenticate" 中添加信息。

           第三步:客户端把用户名和密码用BASE64加密后,放在Authorization header中发送给服务器, 认证成功。

          第四步:服务器将Authorization header中的用户名密码取出,进行验证, 如果验证通过,将根据请求,发送资源给客户端

          使用Fiddler Inspectors 下的Auth 选项卡,可以很方便的看到用户名和密码:

          杂谈:

              以前一直分不清 authentication 和 authorization,其实很简单,举个例子来说:

       你要登机,你需要出示你的身份证和机票,身份证是为了证明你张三确实是你张三,这就是 authentication;而机票是为了证明你张三确实买了票可以上飞机,这就是 authorization。

       在 computer science 领域再举个例子:

      你要登陆论坛,输入用户名张三,密码1234,密码正确,证明你张三确实是张三,这就是 authentication;再一check用户张三是个版主,所以有权限加精删别人帖,这就是 authorization。  

    function GetDateForServiceCustomer(userId) {
        $.ajax({
            url: 'http://*******/api/orders',
            data: {
                currUserId: userId,
                type: 1
            },
            beforeSend: function(request) {
                request.setRequestHeader("Authorization", token);
            },
            dataType: 'JSON',
            async: false,//请求是否异步,默认为异步
            type: 'GET',
            success: function (list) {
            },
            error: function () {
            }
        });
    }
    $.ajax({
        type: "POST",
        headers: {
            Accept: "application/json; charset=utf-8",
            userToken: "" + userToken
        },
        url: "/index",
        data: JSON.stringify(mytable.params),
        contentType: "application/json",
        dataType: "json",
        success:function(data){
                        
        },error:function(data){
                        
        }
    });
    success:function(dat){
              console.log(dat);
                if(dat.code==1){
                  sessionStorage.setItem('token',dat.data.access_token);
                  //这里设置缓存存储Token
                  sessionStorage.setItem('user',userName);
                  location.href = "index.html";
                }else{
                  $(".tip2").html("用户名或密码错误");
                }
            }

      原文地址:http://www.cnblogs.com/leijing0607/p/7494972.html

  • 相关阅读:
    python2.7升python3.2
    SQL-基础学习使用的数据库资料
    SQL-基础学习2--ORDER BY ,DESC,WHERE, BETWEEN,AND ,OR ,IN ,NOT
    SQL-基础学习1--SELECT,LIMIT,DISTINCT,注释
    Python之Django-part 1
    python--文本处理1
    EXTJS4.2——8.Form+gride+linq进行前后端传输
    LINQ的实例
    高级委托使用
    C# 委托
  • 原文地址:https://www.cnblogs.com/historylyt/p/10071710.html
Copyright © 2020-2023  润新知