【问题标题】:Possible to get Asana tasks through JSON-P and Asana Connect?可以通过 JSON-P 和 Asana Connect 获得 Asana 任务吗?
【发布时间】:2014-05-09 02:11:03
【问题描述】:

是否可以在没有后端的情况下连接到 ASANA?

我们在网络服务器上有一个安全文件夹,我们希望仅使用 Javascript 检索项目的任务列表。那可能吗?

我从 Asana 看到了一些消息,他们通过 Asana Connect 支持 JSON-P,但是对于如何从文档中设置它有点不清楚。有没有我没有找到的示例?或者有没有人之前成功设置过这个?

【问题讨论】:

  • 请注意,我们正在弃用 JSON-P 输出格式。

标签: javascript jsonp asana


【解决方案1】:

执行此操作的首选方法是使用 CORS(已添加 November 2013) - 有关如何使用它的示例,请参阅 this gist。如果您不熟悉 CORS,它代表 Cross-Origin Resource Sharing,并允许您发出跨域请求,前提是客户端和服务器的标头适当匹配。

【讨论】:

  • 很好的例子,正是我想要的。谢谢!
【解决方案2】:

如果有人已经在使用 Jquery(就像我一样),您可以使用以下代码执行与 @agnoster 中的示例相同的操作。

$.ajax({
       url : 'https://app.asana.com/api/1.0/users/me',
       dataType : 'json',
       type: 'GET',
       beforeSend : function(xhr) {
           xhr.setRequestHeader('Authorization', 'Basic ' + btoa(api_key + ":"));
       }
    }).done(function(response) {
        console.log(response.data);
    });

如果你需要 POST/PUT,你可以像这样使用 jQuery:

$.ajax({
    url : https://app.asana.com/api/1.0/tasks/taskid',
    dataType : 'json',
    type: 'PUT',
    data: { "completed": true }, 
    beforeSend : function(xhr) {
        xhr.setRequestHeader('Authorization', 'Basic ' + btoa(api_key + ":"));
    }
});

PS!您将无法在 IE9 上使用它,因为它不支持发送标头(因此 xhr.setRequestHeader() 不起作用)

【讨论】:

    猜你喜欢
    • 2019-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-20
    • 2016-01-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多