使用CSRF令牌时的注意事项

aki发表于:2020年07月10日 13:48:51更新于:2021年02月26日 15:26:24

本次介绍使用CSRF令牌时容易犯错的一些地方。

下面的文章中明确写到,用会话验证执行kintone REST API时,需要CSRF令牌。(HTTP方法为POST, PUT, DELETE时)
获取CSRF令牌

在kintone内(JavaScript)执行API时,无论HTTP方法是什么都不需要CSRF令牌。但是有个例外,用JavaScript通过XMLHttpRequest执行REST API时,需要CSRF令牌。
※这种情况下,需要CSRF令牌的仅当HTTP方法为POST, PUT, DELETE时。

使用XMLHttpRequest的理由如下。

  • 想要执行无法通过[kintone REST API 请求(kintone.api)]执行的REST API(文件上传、下载)。

参考Tips

上传文件时的3个必要步骤

  • 此Tips介绍了为了能够执行未封装“kintone REST API请求(kintone.api)”的REST API(文件上传)而使用XMLHttpRequest时,必须要用到CSRF令牌的情况。

下载文件时的2个必要步骤

  • 此Tips介绍了为了执行未封装“kintone REST API 请求(kintone.api)”的REST API(下载文件)而使用了XMLHttpRequest,但HTTP方法为POST, PUT, DELETE之外的方法,因此不需要CSRF令牌的情况。 

总结


POST, PUT, DELETE POST, PUT, DELETE以外 

kintone REST API 请求(kintone.api)

不要不要 
XMLHttpRequest必要不要

 

此Tips在2014年4月版中确认过。


回复(2)

  • betsy_yan

    不需要

    引用 的回复:

    如果要执行一个外部JAVA程序,调用kinton的记录添加api时,是否需要用到CSRF令牌?

  • 如果要执行一个外部JAVA程序,调用kinton的记录添加api时,是否需要用到CSRF令牌?

注意:贴代码时请注意格式并使用"代码语言",与本文无关的问题请至“讨论社区”提问。