JavaScript SDK でMicrosoft Graph API のcreateUploadSession
エンドポイントを使用しようとしており、3 MB をわずかに超える小さなファイルでアップロードをテストしようとしています。リクエストを送信するたびにPUT
、次のエラー レスポンスを受け取ります。
{
"error": {
"code": "InvalidContentRangeHeader",
"message": "Invalid Content-Range header."
}
}
ファイル全体を一度に送信しようとしているので、リクエストは次のようになります。
const uploadSession = await client
.api(`/me/messages/${messageId}/attachments/createUploadSession`)
.version('beta')
.post({
AttachmentItem: {
attachmentType: 'file',
name: attachment.name,
size: attachment.size,
},
});
const res = await fetch(uploadSession.uploadUrl, {
method: 'PUT',
headers: {
'Content-Type': 'application/octet-stream',
'Content-Range': `bytes 0-${attachment.size - 1}/${attachment.size}`,
'Content-Length': attachment.size,
},
body: attachment.contentBytes,
});
const json = await res.json();
return json;
私が行方不明になっているものはありますか?完全な範囲を正しく指定すると、ファイル全体が渡されるはずです。