0

jomsocial 環境で Restful Web サービスを作成しました。ローカルマシン上にあります。REST コンソールを使用してテストすると、応答が返されます。

形成されたローカル URL は...

http://localhost:5454/kisan-06/index.php?option=com_api&format=raw&app=users&resource=login&key=dfd8a84f8cdce807ae1d30a838415ea37eaa075c

問題:

jQuery.ajax を使用して同じものを呼び出すと、常にエラー コールバック関数が呼び出されます。

Ajax呼び出しは...

$.ajax({
    type: "POST",
    url: "http://localhost:5454/kisan-06/index.php?option=com_api&format=raw&app=users&resource=login&key=dfd8a84f8cdce807ae1d30a838415ea37eaa075c",
    data: "{ username: 'sai.kiks2@gmail.com', password: '123456'}",
    contentType: "application/json; charset=utf-8",
    cache : false,
    dataType: "json",
    success: function(data) {
        alert("in success");
    },
    error: function(jqXHR,error, errorThrown){
        //alert("There was an error loggin in");
        alert("responseXML ",jqXHR.responseXML);
        alert("responseText: ",jqXHR.responseText);
        alert("errorThrown: ",errorThrown);
    }
});

私はasp.net Webサービスを持っていますが、それは次のように応答を返していました...

<?xml version="1.0" encoding="utf-8"?>
<string>{"UserID":"180339206","LogInName":"Amol Chakane","IsValid":"True","UserRoleID":"1","IsPending":"0","IsOrganization":"False"}</string>

jomsocial Web サービスからの応答は...

["UserID : 475", "LogInName : kruti patil", "IsValid : True", "UserRoleID : 1", "IsPending : 0", "IsOrganization : False"]

この問題を検索しましたが、解決策が見つかりませんでした。これで私を助けてください。

編集#1

他の形式で応答を取得しようとしました。

{
"UserID": "475",
"LogInName": "kruti patil",
"IsValid": "Yes",
"UserRoleID": "1",
"IsPending": "NO",
"IsOrganization": "No",

}

それでもうまくいきません:(

ありがとう

4

2 に答える 2

0

あなたがより多くの情報を投稿したとき、私は/あなたの問題の理由を見つけたと思います. このページによると、json オブジェクトの構文が間違っています。リンクされたページには、Javascript で最も一般的なデータ型の例が示されています。例を読む場合は、引用符の位置に注意してください。

于 2012-08-20T13:23:40.590 に答える
0

多くの検索の後、最終的にこの問題の解決策を見つけました。:)

localhostの代わりに10.0.2.2を使用する必要があるこのネットワーク アドレスは、android エミュレーターが localhost を認識しないので、これを参照してください

少なくとも成功のコールバックが呼び出されるようになりました

ajax呼び出しは..

$.ajax({
    type: "POST",
    url: "http://10.0.2.2:5454/kisan-06/index.php?option=com_api&format=raw&app=users&resource=login&key=dfd8a84f8cdce807ae1d30a838415ea37eaa075c",
    data: {username: 'sai.kiks2@gmail.com', password: '123456'},
    success: function(data, textStatus, jqXHR) {
        alert("in success");
    },
        error: function(jqXHR, textStatus, errorThrown){
            alert("There was an error loggin in");
        }
});

しかし今、私は別の問題に直面しています...

成功コールバックで返されたデータにアクセスするには?

于 2012-08-24T10:09:30.433 に答える