我使用純粹的JavaScript來訪問使用Spring構建的某些Web服務。當我試圖對使用CSRF時遇到的問題之一使用Ajax Post調用。使用Ajax的無效CSRF令牌
的Ajax調用的線條:
var data = {'attribute1':'1','attribute2':'2'};
$.ajax({
type: "POST",
url: url,
data: data,
success: function(data)
{
if (typeof inputId !== 'undefined') {
$("#"+inputId).val(JSON.stringify(data));
}
console.log(JSON.stringify(data));
}
});
我一直在網上搜索,但所有我發現是更新後端(JSP,PHP)來填充屬性「$ {_ CSRF。 parameterName}「。 但是,我沒有使用任何後端,所有的頁面只是HTML和JavaScript。
謝謝你的解釋。我真正需要知道的是這兩件事,即服務器期望的名稱和實際的令牌。我一直在做進一步的研究,顯然,Spring,默認情況下會使這個令牌對客戶端不可見。因此,看起來如果你不使用他們的技術(JSP),你將需要禁用它。 – Tony