Salesforce Httprequest错误。帮助提出正确的请求

Salesforce Httprequest错误。帮助提出正确的请求,salesforce,httprequest,box-api,Salesforce,Httprequest,Box Api,我有一个例子要求: curl https://upload.box.com/api/2.0/files/content \ -H "Authorization: Bearer ACCESS_TOKEN" \ -F filename=@FILE_NAME \ -F parent_id=PARENT_FOLDER_ID 我的请求返回一个错误,缺少参数“name”:“parent”,“message”:“parent”是必需的 这是我的要求: String boundary = String

我有一个例子要求:

curl https://upload.box.com/api/2.0/files/content \
-H "Authorization: Bearer ACCESS_TOKEN" \
-F filename=@FILE_NAME \
-F parent_id=PARENT_FOLDER_ID
我的请求返回一个错误,缺少参数“name”:“parent”,“message”:“parent”是必需的

这是我的要求:

    String boundary = String.valueOf(DateTime.now().getTime());
    String body = '------------' + boundary + '\r\n';
    body +='Content-Disposition: form-data; name="FileName"; FileName="' + fileBody +'"\r\n';
    body+='Content-Transfer-Encoding: base64\r\n';
    if ((contentType == null) || (contentType == '')){contentType = 'application/octet-stream';}
    body+='Content-Type: ' + contentType + '\r\n\r\n';
    body+=EncodingUtil.base64Encode(fileBody);
    body +='Content-Disposition: form-data; name="Parent"; \r\n';
    body+='Content-Transfer-Encoding: base64\r\n';
    if ((contentType == null) || (contentType == '')){contentType = 'application/octet-stream';}
    body+='Content-Type: ' + contentType + '\r\n\r\n';
    body+=0;

    body+='\r\n------------' + boundary + '--'; 

    HttpRequest req = new HttpRequest();

    req.setHeader('Content-Type', 'multipart/form-data; boundary=----------' + boundary);
    req.setHeader('Content-Length',String.valueof(body.length()));

    req.setBody(body);
    req.setHeader('Authorization', 'Bearer ' + accessToken.token__c);
    req.setMethod('POST');
    req.setEndpoint('https://upload.box.com/api/2.0/files/content');

    Http http = new Http();
    HttpResponse res = http.send(req);

它询问您要上载到的文件夹的ID

尝试更改此行:

body +='Content-Disposition: form-data; name="Parent"; \r\n';
致:

编辑:虽然我不得不问,为什么你要把整个文件正文作为文件名发送

body +='Content-Disposition: form-data; name="parent_id"; \r\n';