UrlFetchApp.Fetch returns 状态 200 但 Google 脚本网络应用程序不工作
UrlFetchApp.Fetch returns status 200 but Google script web app does not work
我做了两个 Google 传播sheet。一个是 parent sheet,另一个是从 parent sheet 导入数据的 child sheet。此数据是使用独立的 Google 应用程序脚本导入的,该脚本作为网络应用程序发布到 运行 作为 "Me",唯一有权访问 parent sheet 的人. (这是不与其他用户共享 parent sheet 的项目要求。另外,我有 child sheet 保护,除了其他用户可以编辑的一列。如果我不要像我一样 运行 脚本,它会 运行 作为那个用户然后得到“无法编辑受保护的单元格”错误作为脚本 运行 否则就像他一样)
现在的问题是,当我 运行 通过使用 Chrome 访问它的 url (exec) 这个 Web 应用程序时,它 运行 没问题并获取数据childsheet。但是当我在 child sheet 绑定脚本中使用 UrlFetchApp.Fetch 执行相同操作时,它会给出响应代码 200 但不会导入任何数据!
为什么?我错过了什么?请帮忙。
幸运的是,我自己找到了解决方案。缺少的 link 是要与获取请求一起传递的 OAuth 持有者 header。另外,我之前在我的网络应用程序中使用 doGet,但现在改用 doPost 并且工作正常!
因此,总结是在您的 header 中将 OAuth 作为承载者传递,并且不要忘记首先再次发布您的网络应用程序以进行更改(除非您使用开发模式进行开发)。
PS - 检查标记为重复的 link 我已针对我的问题发布。它有适合您的代码。
我做了两个 Google 传播sheet。一个是 parent sheet,另一个是从 parent sheet 导入数据的 child sheet。此数据是使用独立的 Google 应用程序脚本导入的,该脚本作为网络应用程序发布到 运行 作为 "Me",唯一有权访问 parent sheet 的人. (这是不与其他用户共享 parent sheet 的项目要求。另外,我有 child sheet 保护,除了其他用户可以编辑的一列。如果我不要像我一样 运行 脚本,它会 运行 作为那个用户然后得到“无法编辑受保护的单元格”错误作为脚本 运行 否则就像他一样)
现在的问题是,当我 运行 通过使用 Chrome 访问它的 url (exec) 这个 Web 应用程序时,它 运行 没问题并获取数据childsheet。但是当我在 child sheet 绑定脚本中使用 UrlFetchApp.Fetch 执行相同操作时,它会给出响应代码 200 但不会导入任何数据!
为什么?我错过了什么?请帮忙。
幸运的是,我自己找到了解决方案。缺少的 link 是要与获取请求一起传递的 OAuth 持有者 header。另外,我之前在我的网络应用程序中使用 doGet,但现在改用 doPost 并且工作正常!
因此,总结是在您的 header 中将 OAuth 作为承载者传递,并且不要忘记首先再次发布您的网络应用程序以进行更改(除非您使用开发模式进行开发)。
PS - 检查标记为重复的 link 我已针对我的问题发布。它有适合您的代码。