0

appspotにアプリケーションがあります。これは個人ドメインアカウントにあります。

GmailアカウントのiGoogleページにiGoogleガジェットを配置しました。

ガジェットからajaxリクエストを次のように送信しています:

          $(document).ready(function(){
                jQuery.ajax({
                    type: "get",
                    url: "http://searcegadget2.appspot.com/requestServlet",
                    success: function(msg){
                        alert(msg);
                        if(msg.search('tr') != -1){
                            id = msg.split('</tr>').length - 1;
                            //alert(id);
                            $('#amountTable').append(msg);
                            difference();
                        }else if(msg.search('form') != -1){
                            $('#gadget').css('display', 'none');
                            document.write(msg);
                        }else if(msg.search('http') != -1){
                            document.location = msg;
                            $('#amountTable').append(msg);
                        }

                    },error: function(XMLHttpRequest, textStatus, errorThrown){
                        alert("XMLHttpRequest: " + XMLHttpRequest.responseText);
                        alert("textStatus : " + textStatus.responseText);
                        alert("errorThrown : "+ errorThrown);
                    }
                });
            });

XMLHttpRequestとerrorThrownアラートには何も表示されません。しかし、textStatusに「エラー」が表示されます!

これで、リンク「http://searcegadget2.appspot.com/requestServlet」が赤で表示され、MozillaのInspect Elementから「http://searcegadget2.appspot.com/requestServlet」を開くと、必要なものが返されます。データも!ガジェットに取り付けるにはどうすればよいですか?

私のリクエストサーブレットはJavaです。参考:jQuery.ajax()

また、このWebアプリケーションをテストしました。それは正しく機能しています!

4

1 に答える 1

0

エラー メッセージやエラー コードが表示されないと、問題が何であるかを判断するのは困難ですが、投稿から、クロスドメイン スクリプティングの問題であると考えられます。別のドメインから XMLHttpRequest を実行することはできません。(たとえば、gmail.com は、エラーをスローすることなく、searcegadget2.appspot.com に対して XMLHttpRequest を実行できません)。

requestServlet エンドポイントを処理するコントローラーの応答にAccess-Control-Allow-Originヘッダーを追加してみてください。

Access-Control-Allow-Origin ヘッダーの詳細については、次のスレッドを参照してください。

Access-Control-Allow-Origin 複数のオリジン ドメイン?

于 2011-02-23T17:46:34.890 に答える