2011-09-16 60 views
5

Tôi có dịch vụ RESTful trên trang web được bảo mật. Tôi có thể xây dựng một đề nghị tốt với khách hàng REST trong Firefox, nhưng khi tôi cố gắng để xây dựng nó trong mã tôi nhận được một 401. Đây là mã của tôiCách đặt chuỗi tiêu đề yêu cầu

(function() { 
       $.ajax({ 
        url : "https://myrestsite", 
        type : "GET", 
        //beforeSend: function (req){ 
        // req.setRequestHeader("Authorization","myauthstring"); 
        // req.setRequestHeader("Content-Type", "application/json"); 
        //},       
        headers : { 
         "Authorization" : "myauthstring", 
         "Content-Type" : "application/json", 
        },  
        success : function(){alert('we got here')} 
       }); 
      })(); 

này xuất hiện trong các công cụ phát triển web trong FF như:

Request-Headers:authorization,content-type 

Khi những gì tôi cần (từ khách hàng còn lại là FF) là:

Authorization:myAuthstring 
Content-Type:application/json 

Bất kỳ manh mối như những gì tôi đang làm sai?

** chỉnh sửa - hóa ra tôi đang nhấn giới hạn tên miền chéo. Làm thế nào để các khách hàng còn lại có được xung quanh đó?

+0

Ok, có vẻ như tôi không gặp may với dịch vụ này như jsonp không được phép. Tôi không biết tôi có thể làm gì khác. Loại dữ liệu: 'jsonp' trả về lỗi. – Corey

+0

Bạn không thể gặp vấn đề về cors. Nhà cung cấp API của bạn phải thêm vào tiêu đề của họ. Tôi nghĩ rằng nó nên được cho phép-cross-origin: * nơi * có nghĩa là cho phép tất cả – qamar

Trả lời

-1

bạn có thể vượt qua contentType như một tùy chọn để $ .ajax

$.ajax({ 
    ... 
    contentType: 'application/json' 
}); 
Các vấn đề liên quan