jquery-ajaxからstruts2アクションを呼び出していますが、アクションメソッドメソッドが正しく呼び出されていますが、残念ながらアクションの成功ページは呼び出されません。 jsメソッドはGoogle OAuth2.0で使用するメソッドです。Struts2の成功ページが呼び出されない
JS:
function onSignIn(googleUser) {
// Useful data for your client-side scripts:
var profile = googleUser.getBasicProfile();
console.log("ID: " + profile.getId()); // Don't send this directly to your server!
console.log('Full Name: ' + profile.getName());
console.log('Given Name: ' + profile.getGivenName());
console.log('Family Name: ' + profile.getFamilyName());
console.log("Image URL: " + profile.getImageUrl());
console.log("Email: " + profile.getEmail());
// The ID token you need to pass to your backend:
var id_token = googleUser.getAuthResponse().id_token;
console.log("ID Token: " + id_token);
console.log("Request sent through ajax jquery");
$.ajax({
type : "POST",
url : "googlesignup",
data:"idtoken="+id_token,
dataType : "text",
async: false,
// onSuccess:function(){
// console.log("success");
// }
});}
struts.xml:
<action name="googlesignup" class="com.msventure.web.actions.SignUpAction" method="googleSignUp">
<result name="success">/buildprofile.jsp</result>
<result name="fail">/signup.jsp</result>
<result name="index">/signup.jsp</result>
<result name="input">/signup.jsp</result>
</action>
更新:
-
私はちょうどチェックし
、私は設定していますアクションメソッドのクッキー値によっては、クッキーがクライアントで更新されています。ただし、成功からの応答はbuildprofile.jspですが、変更する必要がありますが最後のページが表示されます。
ajaxへの応答がエラーコールバック関数になりました。
あなたの提案は高く評価されます。
これはAjaxリクエストです。あなたはそれからどのように応答を見せますか? –
@Aleksandr M:はい、これは理解していますが、これが変更されていない理由だと思います。リダイレクトして正常に動作しています。 – coolmego
その後にリダイレクトを行う場合、ajaxのポイントは何ですか? –