8

我创建了一种将 json 数据发布到 Web 服务的方法:

 function WishList() { }
 WishList.prototype.addToWishList = function(redirectURL, postURL, userObj) {
    $.ajax({
           type: "POST",
           url: postURL,
           data: JSON.stringify(userObj),
           dataType: 'json',
           contentType: "application/json",
           success: function(data){alert(data);},
           failure: function(errMsg) {
              alert(errMsg);
           }
 }

 This is my object:

 var user1 = {
            ID:1,
            Sex:1,
            Name:"titi",
            Company:"ABC",
            Address:"Phnom Penh",
            Email:"test.abc@gmail.com",
            Phone:"011123456",
            WebAccount:"test.abc@gmail.com",
            Password:"123456",
            GroupCustomerID:125,
            Stars:1,
            IsVIP:0,
            PriceLevel:1,
            LastDateSale:"\/Date(-62135596800000)\/",
            TotalCredit:150.12,
            AgingData:null,
            TotalRedeemPoint:1000.00,
            RedeemData:null,
            ExchangeRate:155.00,
            HistoryData:null
        };          

 Calling function :

 $(document).ready(function () { 
    var myWishList = new WishList();
    $('#addToWishList').click(function(){
       myWishList.addToWishList('http://www.blahblahblah.com' , 'http://blahblah/Website/Products/Product.svc/Wishlist/' , user1);
    });
 });

然后我的控制台出现错误: "NetworkError: 405 Method Not AllowedinfirefoxInvalid HTTP status code 405 , XMLHttpRequest cannot load urlin chrome

注意:当我使用Rest ClientChromePOST访问网络服务时,它可以工作。

任何帮助将不胜感激,谢谢。

4

1 回答 1

11

不确定您在另一端使用什么作为服务,但这可能是由于跨域发布。我讨厌发布链接并运行,但这可能对您有用。

http://praneeth4victory.wordpress.com/2011/09/29/405-method-not-allowed/

看起来他们可以让它在 IE 中运行,但在使用其他浏览器时遇到了一些问题。也许这对夫妇的变化将有助于更好地访问服务。

这篇文章也很好地解释了错误和部分,所以如果上面的链接没有帮助,这个链接可以帮助你进一步诊断问题。

http://www.checkupdown.com/status/E405.html

好的,最后一次编辑,只是想确保您有足够的信息来解决您的问题,这是一篇关于我相信您遇到的潜在问题的好文章。

http://www.d-mueller.de/blog/cross-domain-ajax-guide/

于 2013-10-02T15:33:19.503 回答