Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/30.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 我在这个HTTP请求中做错了什么?_Javascript_Angular - Fatal编程技术网

Javascript 我在这个HTTP请求中做错了什么?

Javascript 我在这个HTTP请求中做错了什么?,javascript,angular,Javascript,Angular,我从dropbox api中得到一个错误: 调用API函数“files/download”时出错:HTTP头“Dropbox API Arg”:无法将输入解码为JSON let url = 'https://content.dropboxapi.com/2/files/download' let headers = new Headers({ }); headers.append('Authorization', 'Bearer ...'); headers.append

我从dropbox api中得到一个错误:

调用API函数“files/download”时出错:HTTP头“Dropbox API Arg”:无法将输入解码为JSON

let url = 'https://content.dropboxapi.com/2/files/download'
    let headers = new Headers({ });
    headers.append('Authorization', 'Bearer ...');
    headers.append('Dropbox-API-Arg', '/readme.txt');
    let options = new RequestOptions({ headers: headers });

      this.http
      .get(url, options)
      .subscribe(this.fileContent)
这是他们在api上的示例:

curl -X POST https://content.dropboxapi.com/2/files/download \
    --header "Authorization: Bearer <get access token>" \
    --header "Dropbox-API-Arg: {\"path\": \"/Homework/math/Prime_Numbers.txt\"}"
curl-X POSThttps://content.dropboxapi.com/2/files/download \
--标题“授权:持票人”\
--标题“Dropbox API参数:{\'path\':\”/homography/math/Prime\u Numbers.txt\“}”
我可能把标题弄错了,我以前从来没有用过


编辑:path变量是一个等于文件路径的字符串。i、 e.“readme.txt”

在谷歌上快速搜索,发现:

实际上,变量
path
的格式与api期望的格式不一致

我添加了链接提供的实用功能:

var charsToEncode = /[\u007f-\uffff]/g;

function http_header_safe_json(v) {
  return JSON.stringify(v).replace(charsToEncode,
    function(c) { 
      return '\\u'+('000'+c.charCodeAt(0).toString(16)).slice(-4);
    }
  );
}
编辑

您的
路径
变量应如下所示:

var path = {
  path: '/readme.txt'
};

您使用的SDK版本是什么?我只是使用HTTP路由。我已经看到了。我不知道api需要什么格式。我试着使用了回答线程的人使用的函数,它给了我与回答线程的人所说的相同的错误。你能提供变量
path
中的值吗?是的,非常感谢。现在我正在尝试从我的this.filecontent:any访问数据。有麻烦了。。。