0

次の ajax メソッドを含む html ページがあります。

$(document).ready(function() {
            $.ajax({
                type: "POST",
            url: "http://www.webservice.com/blahblah.asmx/blahb123",
            data: "tnWsGuid=TEST1",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
                success: function(msg)
                {
                    alert("sucess")
                },
                error: function(e)
                {
                    alert(JSON.stringify(e));                       
                }
                });
        });

403禁止されています。同僚が Web サービスを構築しましたが、私はコードにアクセスできず、現在彼が休暇中でコードを変更することもできません。このデータを表示する必要があります。この時点で、試みたすべてが失敗し、403 禁止エラーが表示されます。コードを表示する目的で、URL 名と成功関数を単なる警告ダイアログに変更しました。

もう1つのことは、jsonがXMLでラップされているようで、次のようなASP.NET Webサービスから来ていることです。

<string xmlns="http://Walkthrough/XmlWebServices/">
{"approverName":"","emailAddress":"","companyName":"ABC","address":{"streetAddress1":"12 BlahBlah","streetAddress2":"","state":"ON","zipCode":"","country":"SO","phoneNumber":""},"tabledata:"[{"vendorPart":"AAAAA","partDescription":"N/A","price":"0.00","quantity":"28"},{"vendorPart":"BBBBBBB","partDescription":"N/A","price":"0.00","quantity":"3"},{"vendorPart":"CCCCCC","partDescription":"N/A","price":"0.00","quantity":"25"}]}
</string>

json を受信することを期待していたので、これは当初の意図ではありませんでしたが、今は何もできず、XML で処理し、内部でフォーマットされた json を json オブジェクトに変換する必要があります。

私も次のように試しました:

$(document).ready(function() {
                $.ajax({
                    type: "GET",
                url: "http://www.webservice.com/blahblah.asmx/blahb123",
                data: "tnWsGuid=TEST1",
                dataType: "xml",
                contentType: "text/xml",
                    success: function(msg)
                    {
                        alert("sucess")
                    },
                    error: function(e)
                    {
                        alert(JSON.stringify(e));                       
                    }
                    });
            });

最後に、試した両方の例 (json/xml) について、FireFox からの Firebug 応答を出力します。

Json: http://i.imgur.com/zJy4BvD.jpg

XML: http://i.imgur.com/6qiGVwQ.jpg

読んでいただきありがとうございます!

4

2 に答える 2

1

呼び出しがクロス ドメインの場合、dataType jsonp を使用しないと問題が発生する可能性があります。

于 2013-04-09T15:24:04.287 に答える