小编Pra*_*eep的帖子

如何使用 XMLHTTPRequest 处理 CSRF 令牌?

我正在使用受 CSRF 保护的 API。所以我需要做一个 get 调用来获取 CSRF 令牌,然后传递相同的令牌来进行 POST 调用。

下面是我尝试的方法,但我总是收到 CSRF 令牌验证失败作为对 POST 调用的响应。

var tryout = new XMLHttpRequest();
tryout.open("GET", "/api/1.0/csrf");
tryout.withCredentials = true;
tryout.setRequestHeader("x-csrf-token", "fetch");    
tryout.setRequestHeader("Accept", "application/json");
tryout.setRequestHeader("Content-Type", "application/json; charset=utf-8");
tryout.onreadystatechange = function () {
    console.log(this);
    var csrfToken = this.getResponseHeader('x-csrf-token');
    if(tryout.readyState == 4){
        console.log(csrfToken);
        tryout.open('POST', '/api/1.0/create');
        tryout.setRequestHeader('x-csrf-token', this.getResponseHeader('x-csrf-token'));            
        tryout.onreadystatechange = function () {
            console.log("call 2");
            console.log(this.responseText);
        };
        tryout.send();
    }
};
tryout.send();
Run Code Online (Sandbox Code Playgroud)

我怀疑可能是 POST 调用正在启动新会话,因此 CSRF 对该会话无效。

请指导我如何在同一个会话中进行两次 xhr 调用?

javascript xmlhttprequest csrf

3
推荐指数
1
解决办法
1万
查看次数

如何在java中创建带枚举值的地图?

我需要验证作为REST API的一部分传递的参数的值.这些参数是一组固定的值.我想过使用一个参数名为key,枚举为值的地图.所以我可以检查REST API中发送的值是否是枚举键之一.

但是我无法在java中创建一个带有String键和枚举值的Map,尝试创建Map然后将put和enum作为值,但它失败了.

class Validation {
    enum Type {
        INTERNAL,
        EXTERNAL
    }; 
}

Map<String, Object> validationMap = new HashMap<String, Object>();
validationMap.put("type", Validation.Type);
Run Code Online (Sandbox Code Playgroud)

这是抛出未定义类型的错误.

java string enums dictionary

1
推荐指数
1
解决办法
547
查看次数

jslint期待';' 看到'}'用于内联函数

我正在使用javascript的setInterval函数,它期望定义一个将定期执行的内联函数.下面是我的代码片段,

setInterval(
    function(){_this.getView().setModel( new JSONModel(_this._getRecentRatingsModel()) , "recentRatings")},
    interval);
Run Code Online (Sandbox Code Playgroud)

但我抱怨说,我面临jslint违规行为

预期';' 锯 '}'

它期待';' 在_getRecentRatingsModel()之后但是如果我使用; 在那里,setInterval的语法将被破坏.

帮助我如何绕过这个jslint检查.

javascript jslint

-2
推荐指数
2
解决办法
185
查看次数

标签 统计

javascript ×2

csrf ×1

dictionary ×1

enums ×1

java ×1

jslint ×1

string ×1

xmlhttprequest ×1