如何使用Mithril使用身份验证密钥将AJAX请求格式化为API?

时间:2015-12-15 23:47:57

标签: ajax api mithril.js

以下GET请求使用jQuery:

$.ajax({
url: "https://yoda.p.mashape.com/yoda?sentence="+phrase,
headers: {"X-Mashape-Key": "superSecretKey", "Accept": "text/plain"},
success: function(data) {
        console.log(data);
      },
error: function(data) {
        console.log(data);
      }
})

但使用秘银后的改编不起作用:

Yoda.submit = function (phrase) {
  console.log(phrase);
  return m.request({ 
  method: 'GET', 
  url: "https://yoda.p.mashape.com/yoda?sentence=" + phrase, 
  headers: {"X-Mashape-Key": "superSecretKey", 
          "Accept": "text/plain"}
  });
}

在查阅https://lhorie.github.io/mithril/mithril.request.html的文档并搜索类似的示例后,我尝试了不同的变体。我正在考虑使用第三方图书馆,但我想在我走到兔子洞之前我会先尝试一下。我尝试发出AJAX请求时收到的错误消息是我错过了API密钥,即使它就在那里。

更新

我已经了解到,除了下面给出的答案外,Mithril还会自动将API响应解析为JSON。由于我从这个API返回一个字符串响应,我必须在我的m.request对象中包含以下条目:

deserialize: function(value) {return value;}

Deserialize告诉Mithril按原样返回响应值,而不是JSON。

1 个答案:

答案 0 :(得分:3)

您需要使用interface IPattern { void UpdateIfMatch(String Line, bool Trim = true); void Reset(); bool IsMatch(); bool IsFound(); } interface IDeletePattern : IPatten { bool ShouldDelete(); } 属性:

config