2017-08-17 3 views
1

を受けていない私は、Web APIの承認Authorizationヘッダが正しく

をやっている私は、コード

<script src="Scripts/jquery-1.10.2.min.js"></script> 
<script> 
    $(document).ready(function(){ 
     var ulEmployees = $('#ulEmployee'); 
     var username = $('#uname').val(); 
     var password = $('#pword').val(); 
     username = "male"; 
     password = "male"; 
     $('#btn').click(function() { 

      $.ajax({ 

       type: 'GET', 
       url: 'api/Employees', 
       dataType: 'json', 
       headers: { 

        'Authorization': 'Basic' + btoa(username + ':' + password) 

       }, 

       success: function (data) 
       { 
        ulEmployees.empty(); 
        $.each(data, function (index, val) { 

         var fullName = val.FirstName + ''+val.gender + '' + val.LastName; 
         ulEmployees.append('<li>' + fullName + '</li>'); 

        }); 
       }, 


      }); 
     }); 



     $('#btnclear').click(function(){ 

      ulEmployees.empty(); 

     }); 


     }); 

     }); 

</script> 

しかしで次でのWeb APIへのjqueryのから、許可呼び出しを行いますコントローラ側、Iが正しく

としてベローズデータを受信して​​いない

actionContext.Request.Headers.Authorization.Parameter =ヌル

actionContext.Request.Headers.Authorization.Scheme = "BasicbWFsZTptYWxl"

しかしaccually私は怒鳴る

actionContext.Request.Headers.Authorization.Parameter = "bWFsZTptYWxl"

するactionContextを必要としています。 Request.Headers.Authorization.Scheme =「基本」

答えて

2

あなたは

に「基本」の後にスペース記号を追加する必要があるように見えます

'Authorization': 'Basic ' + btoa(username + ':' + password) 
+0

は答えのために非常に多くのuに感謝のようなので、この文字列はルックスかもしれません – rakshi