0
var httpc = new XMLHttpRequest(); // simplified for clarity
        httpc.open("POST", url, true); // sending as POST
        httpc.setRequestHeader("Content-Type",
                "application/x-www-form-urlencoded");
        httpc.onreadystatechange = function() { // Call a function when the
            // state changes.
            if (httpc.readyState == 4 && httpc.status == 200) {
            //MY JSON RESPONSE  
                        alert(JSON.stringify(httpc.responseText));
            }
        }
        httpc.send(params);

上記のコードは Android 4.0 で正常に動作し、応答は有効な JSON 形式で取得されます..しかし、Android 2.3 で同じコードを実行すると、応答が不明な形式で取得され、両方の Android バージョンで URL とパラメーターが同じになります。

2.3 での私の回答は. �<code>I�%&/m�{J�J��t��$ؐ@�����iG#)��*��eVe]f@�흼��{���{�� ;�N'���?\fdl��J�ɞ!���?~|?"��?�YQ~�裏F�������n���/����ț& ����2���u�~����)`�U��TH��2Ϛ<}S_��Y��z:%�����,�o�e��tv� �X��E��{?v��U��V�j�B�s�FU�~�p�d�ɢ�i�2[^�i�S��W���_� ��'������

4.0 では、私の応答は [{"email":"","password":"","user_id":"","store_id":"","message":"Alert!, Wrong Email or Password Please Try Again です。 .","success":"0","nick_name":"","magazine_genre_id":"","magazine_genre_name":"","newspaper_genre_id":"","newspaper_genre_name":"","old_password": "","new_password":"","mode":"","languagecode":"","URL":""}] ファイル:///android_asset/www/project.js:717

Logcat 例外: SyntaxError: undefined での解析エラー:1

4

2 に答える 2

0

私にはあなたが反対のことをしているように思えます。

JSON.stringify() が行うオブジェクトから JSON 文字列を抽出するのではなく、JSON 文字列をオブジェクトに解析する必要があります。

代わりに JSON.parse() を使用してください。また、 eval() は仕事をしますが、遅いのでお勧めできません。

于 2012-11-22T06:42:07.203 に答える
0

を に設定してみましresponseTypeたかjson。私はjqueryからのみ使用しました。疑問がある場合は、このXMLHttpRequestを確認してください

回答
この SO 投稿でいくつかの代替手段が提供されています JSON 解析は Android 4.0 では機能しますが、Android < 4.0 では機能しません

于 2012-11-22T07:06:45.050 に答える