Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript的togglapi_Javascript_Http_Rest - Fatal编程技术网

使用JavaScript的togglapi

使用JavaScript的togglapi,javascript,http,rest,Javascript,Http,Rest,尝试使用PHP cURL访问Toggl报告API后,我运气不佳,现在尝试使用JavaScript访问HTTPRequest。我收到了来自API的200条响应,所以我知道我已连接,我不知道下一步该做什么 var xhr = new XMLHttpRequest(); xhr.open("GET", "https://toggl.com/reports/api/v2", false); xhr.send(); document.write("Status code: " + xhr.status +

尝试使用PHP cURL访问Toggl报告API后,我运气不佳,现在尝试使用JavaScript访问HTTPRequest。我收到了来自API的200条响应,所以我知道我已连接,我不知道下一步该做什么

var xhr = new XMLHttpRequest();
xhr.open("GET", "https://toggl.com/reports/api/v2", false);
xhr.send();
document.write("Status code: " + xhr.status + " ");
document.write(xhr.statusText + "</br>");
有什么建议吗


谢谢

我不知道你用过什么API:在JS的头文件中,试着用

xhr.setRequestHeader('Authorization','[api token encoded with base 64]','Content-type','application/json');

我知道这已经晚了几年,但如果有人处于相同的位置,这对我来说很有用:

var xhr = new XMLHttpRequest();
xhr.open("GET", "https://toggl.com/reports/api/v2/weekly?user_agent=yourname@domain.com&workspace_id=012345", false);
xhr.setRequestHeader('Authorization', 'Basic XXXXXX');
xhr.send();
document.write("Status code: " + xhr.status + " ");
document.write(xhr.statusText + "</br>");
var xhr=new-XMLHttpRequest();
xhr.open(“GET”https://toggl.com/reports/api/v2/weekly?user_agent=yourname@domain.com&workspace_id=012345“,false);
setRequestHeader('Authorization','Basic XXXXXX');
xhr.send();
编写(“状态代码:+xhr.Status+”);
document.write(xhr.statusText+“
”);
其中XXXXXX是您的api密钥加上base-64中编码的字符串“:api_token”

因此,如果您的api密钥是12345,则在base-64中对字符串“12345:api_token”进行编码,以获得MTIzNDU6YXBpX3Rva2Vu

在javascript中,您可以使用btoa函数获取base-64编码的字符串:btoa(“12345:api_标记”)

NB:请注意,在URL中,您需要指定用户代理工作区id,如切换api文档中所述:

查找工作区id的最简单方法是单击名为“团队”的选项卡,并从URL复制编号:012345

user\u agent是您的应用程序名称或电子邮件地址

var xhr = new XMLHttpRequest();
xhr.open("GET", "https://toggl.com/reports/api/v2/weekly?user_agent=yourname@domain.com&workspace_id=012345", false);
xhr.setRequestHeader('Authorization', 'Basic XXXXXX');
xhr.send();
document.write("Status code: " + xhr.status + " ");
document.write(xhr.statusText + "</br>");