簡體   English   中英

Dropbox V2文件上傳端點-無效的內容類型-dropbox-cor s-hack

[英]Dropbox V2 file upload end point - invalid Content Type - dropbox-cor s-hack

我正在嘗試使用V2端點進行文件上傳。 我相信內容標頭設置正確,但是我一直收到此錯誤。 有人可以幫忙嗎?

const request = require('request');
var fs = require('fs');

var apiArgs = '{ "path" : "/testfolder/Nespresso.zip", "mode" : "add", "autorename" : true, "mute" : false }' ;

var formData = {
    'data-binary': fs.createReadStream("F:\\Nespresso.zip")
};

const options = {
    headers: {
        'Authorization' : 'Bearer ############',
        'Content-Type' : 'application/octet-stream',
        'Dropbox-API-Arg': apiArgs
    },
    formData : formData
};

request.post('https://content.dropboxapi.com/2/files/upload', options, function(err, res, body) {
    //let json = JSON.parse(body);
    console.log(body);
    if(res)
    console.log(res.statusCode);

    if(err)
    console.log(err);
});

節點錯誤:

調用API函數“文件/上傳”時出錯:錯誤的HTTP“內容類型”標頭:“ m ultipart / form-data; boundary = ------------------- ------- 298294176382382406791283”。 期望“應用程序/八位字節流”,“文本/純文本; charset = dropbox-cor s-hack”之一。 400

不確定data-binary是否為請求配置對象的有效formData屬性。 參見https://github.com/request/request#multipartform-data-multipart-form-uploads 而且,Dropbox需要application/octet-stream類型的數據,而不是您提供的multipart/form-data 怎么樣:

const request = require('request');
var fs = require('fs');

const options = {
    url: 'https://content.dropboxapi.com/2/files/upload',
    headers: {
        'Authorization' : 'Bearer ############',
        'Content-Type' : 'application/octet-stream',
        'Dropbox-API-Arg': JSON.stringify({
            'path' : '/package.json'
        })
    }
};

const uploadStream = request.post(options, function(err, res, body) {
    //let json = JSON.parse(body);
    console.log(body);
    if(res)
    console.log(res.statusCode);

    if(err)
    console.log(err);
});

fs.createReadStream('./package.json').pipe(uploadStream);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM