私のDBから何かを削除するには、ExtJsスクリプトからPOSTを実行する必要があります。
Ext.Ajax.request({
url: 'deleteRole.html',
method: 'POST',
headers: {'Content-Type': 'text/html'},
waitTitle: 'Connecting',
waitMsg: 'Sending data...',
params: {
"rolename" : rolename
},
scope:this,
success: received,
failure: function(){console.log('failure');}
});
投稿が送信されると、firebugでフォントのロール名を確認できますが、パラメータとしては確認できません。ユーザー登録に関連する別の投稿(spring:formで作成)を紹介します。投稿を調べると、次のことがわかります。
(ソース: subirimagenes.com )
そして、@ RequestParamを使用してコントローラーのパラメーターを取得できます。
しかし、問題があるという投稿では、パラメーター部分が表示されず、Font(Fuente)部分しか表示されません。
(ソース: subirimagenes.com )
結果として、私のスプリングコントローラーはパラメーターを検出しません。 POSTに問題がありますか?
ありがとうございました
問題は、元の質問でheaders: {'Content-Type': 'text/html'},
という行を使用していることです。これにより、コンテンツが投稿データではなく、text/htmlに設定されます。
私はそれを次のコードで解決しました:
var rolename = 'myRol';
Ext.Ajax.request({
url: 'deleteRole.html',
method: 'POST',
params: {
rolename: rolename
},
success: received,
failure: function(){console.log('failure');}
});
私はこれをSencha Touchアプリで使用しています。私はjsonDataと呼ばれる追加の設定を追加し、それをtrueにする必要がありました。そうしないと、エンドポイントURLに何も渡されません。
Ext.Ajax.request({
url: endpoint,
method : "POST",
headers: {
'Content-Type': 'application/json'
},
params : {add: formattedAddress, lat: latitude},
jsonData: true,
useDefaultXhrHeader : false,
withCredentials: true,
success : function(response) {
Ext.Msg.alert("Success", 'yea');
},
failure : function(response) {
var respObj = Ext.JSON.decode(response.responseText);
Ext.Msg.alert("Error", respObj.status.statusMessage);
}
});