概要
使用kintone的「JavaScript/CSS自定義」功能,可以自定義kintone的功能、應用行為和畫面。
此外,還可以使用kintone REST API與外部系統集成資料。
本文將對kintone中JavaScript的自定義和外部系統集成時的注意事項進行說明。
關於如何使用JavaScript自定義kintone和應用程式,請參考kintone用戶説明。
JavaScript編碼注意事項
文字編碼
以UTF-8格式保存(不帶BOM)。
變數/命名空間
請勿修改已有的全域對象,因為kintone可能無法正常工作。
此外,不要使用全域變數,而是在即時函數的作用域或塊作用域內定義變數。
如果必須使用跨作用域共用的變數,請使用以下方法防止全域污染:
- 使用JavaScript捆綁器工具,例如Vite。
- 使用命名空間物件。
不要使用全域變數
|
|
如果使用let和const,則可以使用塊作用域定義變數,如下所示:
|
|
不要添加、修改或引用現有的全域物件
|
|
kintone中使用的id和類屬性
分配給每個元素的id和class屬性的值如有變更,恕不另行通知。
DOM結構也可能會發生變化。
自訂時,請勿進行引用或修改以下內容的自定義:
- 每個元素的id和class屬性的值
- 通過kintone JavaScript API以外的方法獲取的產品DOM結構
操作DOM元素時,請使用kintone JavaScript API。API即時有變更,也會提前通知。
使用JavaScript API獲取的元素的自訂
JavaScript API獲取的元素中添加的元素可能會受到kintone CSS的影響。
因此,添加元素的顯示可能會因kintone的更新而發生變化。
有關可以獲取元素的API清單,請查看以下頁面:
kintone JavaScript API:選取元素
獲取URL
使用kintone.api.url()或kintone.api.urlForGet(),獲取kintone的URL。
可確保在將來的版本也可執行。
無法使用JavaScript API進行自定義的地方
粘貼到空格或主題內文中的以下部分無法使用JavaScript API進行自訂。
- 應用程式的記錄清單
- 圖表
在多個網路瀏覽器中進行測試
建議您使用多個網路瀏覽器進行測試。
根據網路瀏覽器的類型和版本,可能執行結果跟預期的不太一樣。
如果要載入的JavaScript程式出現問題,kintone將無法正常工作。
確保自訂的kintone功能正常工作。
使用kintone REST API的注意事項
有問題的程式可能會降低性能或阻止您使用服務。
避免在短時間內發送大量請求
自動發送大量請求的程式或同時並行執行大量請求的程式都可能導致回應不良等服務降級。
對於導致伺服器負載過高或資源消耗過大的請求,可能會強制實施訪問限制。
設置相應的使用者代理
為了能夠判斷從哪個服務或工具發送請求,請設置相應的使用者代理(「User-Agent」標頭)。
有關使用者代理的指南,請參閱RFC9110「User-Agent」。
10.1.5. User-Agent | RFC 9110
盡可能避免並行處理
如果同時執行添加、更新或刪除應用或記錄,則可能會發生死鎖並導致錯誤。
並行執行kintone REST API時請小心。
kintone更新的影響
根據所創建程式的實現情況,kintone更新后,自定義設置可能無法正常工作。
根據需要編輯JavaScript和CSS檔案,然後重新上傳。
如需降低kintone更新的影響,請使用kintone JavaScript API。
API規範披露和規範變更政策
安全性
為避免因自定義而出現安全問題,安全編碼準則進行編碼。
kintone安全編碼指南