zoukankan      html  css  js  c++  java
  • (办公)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

  • 相关阅读:
    Xshell 连接Linux服务器自动中断问题
    JavaScript验证输入的字符是否包含表情
    jQuery实现单击某个标签改变样式
    ELK之五----logstash收集haproxy日志
    ELK之四-----logstash收集nginx日志及tcp日志
    ELK之三-----JAVA日志多行合并、tomcat json日志收集与处理
    文本三剑客之二---Sed用法
    ELK之二----kibana部署及logstash单(多)日志收集
    ELK之一-----Elasticsearch介绍与部署
    Jenkins之五-----基于脚本实现代码部署与回滚
  • 原文地址:https://www.cnblogs.com/historylyt/p/10071710.html
Copyright © 2011-2022 走看看