上傳檔案

information

本頁面使用機器翻譯而成。
機器翻譯免責聲明 (External link)

目錄

上傳檔案

將檔案上傳到臨時存儲。
臨時存儲是臨時存儲使用此 API 上傳的檔案的臨時存儲位置。

  • 通過將上傳檔的檔鍵與其他 API 一起使用,您可以將臨時儲存區域中的檔案附加到記錄、空間等。
  • 您一次只能上傳一個檔案。
  • 可以使用 API 獲取記錄的檔鍵不可用於檔案上傳。

URL

https://sample.cybozu.com/k/v1/file.json

HTTP 方法

POST

所需存取權限

關於上傳檔的訪問許可權,請參考 用於附加檔的 API 所需的許可權,例如用於註冊/更新記錄的 API。

請求

  • 請求以「multipart/form-data」格式發送。 有關詳細資訊,請參閱 RFC 1867 和 RFC 2388。
  • 在 Content-Disposition 中name 為「file」指定,filename 為指定檔名。
    對於日語檔名,請指定UTF-8編碼的內容。
參數

示例請求
URL

https://sample.cybozu.com/k/v1/file.json

標頭
1
2
3
4
{
  "X-Cybozu-API-Token": "API_TOKEN",
  "Content-Type": "multipart/form-data"
}

有關請求頭的詳細資訊,請參閱通用規格。
kintone REST API通用規範

HTTP 標頭資訊
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
POST /k/v1/file.json HTTP/1.1
Host: example.cybozu.com:443
X-Cybozu-API-Token: TOKEN
Content-Type: multipart/form-data; boundary="---------------------------bee48a285354"
Content-Length: 188
-----------------------------bee48a285354
Content-Disposition: form-data; name="file"; filename="sample.txt"
Content-Type: text/plain

test
-----------------------------bee48a285354--

回應

屬性
屬性名稱 類型 說明
fileKey 字串 上傳檔的檔鍵
檔鍵用作用於附加檔的 API 中附件欄位的值。
詳情請參閱以下頁面。
欄位格式
示例回應
1
2
3
{
  "fileKey": "c15b3870-7505-4ab6-9d8d-b9bdbc74f5d6"
}

示例代碼

使用 curl 的請求
1
2
3
curl -X POST 'https://sample.cybozu.com/k/v1/file.json' \
  -H 'X-Cybozu-API-Token: API_TOKEN' \
  -F 'file=@sample.txt'
使用 Web 瀏覽器的 Fetch API 的請求

有關 Fetch API 的更多資訊,請參閱以下頁面。
Fetch API (External link)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
const blob = new Blob(['這是一個測試文件'], {
  type: 'text/plain',
});
const formData = new FormData();
// 上傳檔案 API 是 POST 方法,因此請設置 CSRF 權杖
formData.append('__REQUEST_TOKEN__', kintone.getRequestToken());
formData.append('file', blob, 'test.txt');

const headers = {
  'X-Requested-With': 'XMLHttpRequest',
};
const resp = await fetch('/k/v1/file.json', {
  method: 'POST',
  headers,
  body: formData,
});
const respData = await resp.json();
console.log(respData);

檔鍵

有兩種類型的「檔鍵」用於上傳和下載檔:

  • 要獲取的檔鍵以回應上傳檔案API
    上傳檔案的 API
    • 例:c15b3870-7505-4ab6-9d8d-b9bdbc74f5d6
    • 例如,用於將存儲在臨時存儲中的檔與附件欄位相關聯。
    • 可以使用此 API 獲取的檔鍵
  • 選取記錄API可以獲取的附件的檔鍵
    獲取多條記錄
    • 例:201202061155587E339F9067544F1A92C743460E3D12B3297
    • 例如,從附件欄位下載檔時會使用它。
    • 它不是可以使用此 API 獲取的檔鍵。

限制事項

  • 該介面不能發送kintone REST API請求的API執行。
    發送kintone REST API請求API
  • 如果存儲在臨時存儲中的檔未附加到記錄、空間等,則會在三天后刪除。
  • 臨時存儲中的檔也包含在磁碟使用量中。