javascript - Ember.js RESTAdapter : Access JSON params when setting headers

标签 javascript jquery json ember.js ember-data

我使用的 API 需要 Authorization header 内的参数的 HMAC sha256 哈希值。

例如,这些可能是参数:

{ "book": { "title": "Test title", "author": "Test author" } }

我的问题是在设置标题时我无法弄清楚如何访问这些参数。

export default DS.RESTAdapter.extend({
    host: 'http://myapi',
    namespace: 'v1',
    shouldReloadAll() { return true; },
    shouldBackgroundReloadRecord() { return true; },
    headers: function() {
        var params = 'PLACE THE PARAMS HERE';
        var hmacString = CryptoJS.HmacSHA256('string', params).toString(CryptoJS.enc.Hex);
        return {
            Authorization: hmacString
        }
    }.property("Authorization")
});

上面的代码可以工作,但我需要用 JSON 格式的实际参数替换 params 变量(如上所述)。

如何实现这一目标?

最佳答案

我假设您想要基于查询参数构建动态 header 。

我认为您无法从 headers 属性中获取任何查询参数,您可能想尝试通过覆盖 find*< 来构造 header/ 功能。

关于javascript - Ember.js RESTAdapter : Access JSON params when setting headers,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32462722/

相关文章:

javascript - 使用 json 和下划线时通过模板限制输出

javascript - 如何使用普通 javascript 动态隐藏表格单元格内容?

javascript - 替换 keyup 上的值时重置 'input' 元素的光标位置

javascript - "Input type file.files"选择器在 jQuery 中不起作用

javascript - AngularJS 中的 jQuery .one() 等价于什么?

javascript - 好的,你能在这里发现语法错误吗?

javascript - 样式化 json 列表

javascript - 上传前用 Canvas 调整图像大小

javascript - 使用 Bootstrap 在 Javascript 中强制页面缩放至 135%

json - 当我使用 SuperObject 解析字符串时,为什么会出现大量问号?