【问题标题】:Angularjs http requestAngularjs http请求
【发布时间】:2017-05-12 11:57:26
【问题描述】:

我尝试在angularjs中申请

 POST /api/oauth/token HTTP/1.1
 Host: Myweb.com
 Authorization: Basic Base64(client_id:client_secret)
 Content-Type: application/x-www-form-urlencoded

 grant_type=client_credentials

像这样..

 Var req = {
   method: 'POST',
   url: 'https://Myweb.com/api/oauth/token',
   headers: {
            'Content-Type': 'application/x-www-form-urlencoded',
            'Authorization': 'basic YjBiZGNkZTQtNmE5OS00ZDE4LTg5ZWQtYasdYtek0MzkTWCXy1LTRmOTktNDk0MS1iNDY2LTc2NDysdYdfsdxMzFiYg=='              
   },
   data: { 
           'grant_type':'client_credentials'                
         }     
 }

 $http(req).then(function successCallback(response) {
              console.log('Success');
            }, function errorCallback(response) {
              console.log('Failed');
            });

结果总是失败,以及如何正确应用到 grant_type 部分? 请帮帮我

【问题讨论】:

  • 您遇到什么错误?是JS错误,还是服务器错误?
  • 没有 js 或服务器错误,我得到 Failed 响应。如何申请获取数据?
  • 触发哪个回调,成功回调还是错误回调?
  • 我收到错误回调

标签: javascript angularjs api oauth


【解决方案1】:

请参考这段代码

var _login = function (loginData) {

        var data = "grant_type=password&username=" + 
        loginData.userName + "&password=" + loginData.password;

        var deferred = $q.defer();

        $http.post(serviceBase + 'token', data, { headers: 
        { 'Content-Type': 'application/x-www-form-urlencoded' } }).success(function (response) {

            localStorageService.set('authorizationData', 
            { token: response.access_token, userName: loginData.userName });

            _authentication.isAuth = true;
            _authentication.userName = loginData.userName;

            deferred.resolve(response);

        }).error(function (err, status) {
            _logOut();
            deferred.reject(err);
        });

        return deferred.promise; 
    };

其实取自 https://www.codeproject.com/articles/784106/angularjs-token-authentication-using-asp-net-web-a

【讨论】:

    【解决方案2】:

    试试这个代码:

       var url="https://Myweb.com/api/oauth/token";    
        var data={ 
                   'grant_type':'client_credentials'                
                 };  
    
        $http.post(url,data,{ 
          headers:{
                    'Content-Type': 'application/x-www-form-urlencoded',
                    'Authorization': 'basic YjBiZGNkZTQtNmE5OS00ZDE4LTg5ZWQtYasdYtek0MzkTWCXy1LTRmOTktNDk0MS1iNDY2LTc2NDysdYdfsdxMzFiYg=='              
           }
        })
       .then(function(success){
    
       },function(failure){
    
       });
    

    【讨论】:

      猜你喜欢
      • 2019-09-27
      • 2017-08-24
      • 1970-01-01
      • 2014-05-19
      • 2014-04-28
      • 2016-12-28
      • 2017-10-16
      • 2017-09-12
      • 1970-01-01
      相关资源
      最近更新 更多