問題描述
PostObject請求中file表單域之前的資料大小超出限制。
問題原因
您發起了PostObject請求上傳檔案,但是請求體中file之前的表單域value總大小超過8 MB,導致請求報錯。
問題樣本
以下請求中前五個表單域的value大小共計10 MB。
POST / HTTP/1.1
Host: oss-example.oss-cn-hangzhou.aliyuncs.com
Content-Length: 6443500495
Date: Sat, 18 Feb 2023 05:17:02 GMT
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryW0DET1iaBMeAOBg3
Host: example-bucket.oss-cn-hangzhou.aliyuncs.com
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="filed1"
xxx...(此處省略2MB個字元)...xxx
Content-Disposition: form-data; name="filed2"
xxx...(此處省略2MB個字元)...xxx
Content-Disposition: form-data; name="filed3"
xxx...(此處省略2MB個字元)...xxx
Content-Disposition: form-data; name="filed4"
xxx...(此處省略2MB個字元)...xxx
Content-Disposition: form-data; name="filed5"
xxx...(此處省略2MB個字元)...xxx
Content-Disposition: form-data; name="name"
big.img
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="key"
${filename}
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="policy"
eyJleHBpcmF0aW9uIjoiMjAyMy0wMi0xOFQxMzoxOTowMC4wMDBaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMTA0ODU3NjAwMF1dfQ==
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="OSSAccessKeyId"
LTAI****************
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="success_action_status"
200
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="signature"
miAoLVohS5*****WEXyC3wVecaQ=
------WebKitFormBoundaryW0DET1iaBMeAOBg3
Content-Disposition: form-data; name="file"; filename="big1.img"
Content-Type: application/octet-stream解決方案
確保PostObject請求的請求體中file之前的表單域value總大小超過8 MB。
相關文檔
關於PostObject介面的更多資訊,請參見PostObject。
關於Web端表單直傳OSS的樣本,請參見JavaScript用戶端簽名直傳。
關於調用PostObject介面的常見錯誤及解決方案,請參見Post Object錯誤及排查。