相关疑难解决方法(0)

自定义HTTP标头:命名约定

我们的一些用户要求我们在我们发送请求的HTTP标头中包含与其帐户相关的数据,甚至是我们从API获得的响应.在命名,格式化等方面添加自定义HTTP标头的一般惯例是什么?

另外,您可以随意发布您在网上偶然发现的任何智能用途; 我们正试图用最好的目标来实现这个目标:)

http http-headers

1051
推荐指数
6
解决办法
34万
查看次数

使用jQuery在AJAX请求中添加标头

我想从jQuery向AJAX POST请求添加自定义标头.

我试过这个:

$.ajax({
    type: 'POST',
    url: url,
    headers: {
        "My-First-Header":"first value",
        "My-Second-Header":"second value"
    }
    //OR
    //beforeSend: function(xhr) { 
    //  xhr.setRequestHeader("My-First-Header", "first value"); 
    //  xhr.setRequestHeader("My-Second-Header", "second value"); 
    //}
}).done(function(data) { 
    alert(data);
});
Run Code Online (Sandbox Code Playgroud)

当我发送此请求并使用FireBug观看时,我看到此标题:

选项xxxx/yyyy HTTP/1.1
主机:127.0.0.1:6666
User-Agent:Mozilla/5.0(Windows NT 6.1; WOW64; rv:11.0)Gecko/20100101 Firefox/11.0
接受:text/html,application/xhtml + xml, application/xml; q = 0.9,/ ; q = 0.8
Accept-Language:fr,fr-fr; q = 0.8,en-us; q = 0.5,en; q = 0.3
Accept-Encoding:gzip,deflate
Connection:keep -alive
Origin:null
Access-Control-Request-Method:POST
Access-Control-Request-Headers:my-first-header,my-second-header
Pragma:no-cache
Cache-Control:no-cache

为什么我的自定义标题会转到Access-Control-Request-Headers:

Access-Control-Request-Headers:my-first-header,my-second-header

我期待像这样的标头值:

My-First-Header:第一个值
My-Second-Header:第二个值

可能吗?

javascript ajax jquery post http-headers

377
推荐指数
4
解决办法
79万
查看次数

设计的token_authenticatable安全吗?

我正在使用Rails API构建一个简单的api ,并希望确保我在这里正确的轨道.我正在使用设计来处理登录,并决定使用Devise的token_authenticatable选项,它会生成一个API密钥,您需要随每个请求一起发送.

我将API与骨干/牵线木偶前端配对,我一般想知道如何处理会话.我的第一个想法是将api密钥存储在本地存储或cookie中,并在页面加载时检索它,但是从安全的角度来看存储api密钥的方式让我感到困扰.通过查看本地存储/ cookie或嗅探任何经过的请求来获取api密钥并不容易,并使用它来无限期地冒充该用户?我目前正在每次登录时重置api密钥,但即使这样也很频繁 - 任何时候你登录任何设备,这意味着你会被其他人登录,这是一种痛苦.如果我可以放弃这种重置,我觉得从可用性的角度来看它会有所改善.

我可能在这里完全错了(并且希望我是),任何人都可以解释这种方式的认证是否可靠安全,如果不是,那么一个好的替代方案是什么?总的来说,我正在寻找一种方法,我可以安全地保持用户'登录'到API访问,而不经常强制重新认证.

authentication api ruby-on-rails devise rails-api

76
推荐指数
2
解决办法
2万
查看次数