首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过运行在浏览器中的JavaScript将数据推送到谷歌电子表格

通过运行在浏览器中的JavaScript将数据推送到谷歌电子表格
EN

Stack Overflow用户
提问于 2013-11-10 16:34:34
回答 2查看 52.6K关注 0票数 22

我在一个网络应用程序上工作,我想让用户推送数据到她自己的谷歌电子表格。

首先,我尝试使用Google APIs Client Library for JavaScript,但它似乎没有涵盖电子表格API (https://developers.google.com/apis-explorer/#p/)。

然后我决定直接使用Google Spreadsheets API version 3.0。我设法使用jQueryJSONP检索用户的电子表格

代码语言:javascript
运行
复制
$.ajax({
  url: 'https://spreadsheets.google.com/feeds/spreadsheets/private/full?alt=json-in-script&access_token=' + access_token,
  dataType: 'JSONP',
  success: function(data){
    // use the spreadsheets
  }
});

在相同的方法中,我从用户选择的电子表格中检索工作表。然后,我必须将数据POST到选定的工作表。问题来了:使用JSONP不能做到这一点。而且谷歌服务器似乎不支持CORS。我在浏览器中看到以下错误:

XMLHttpRequest cannot load https://spreadsheets.google.com/feeds/... Origin ..mysite.. is not allowed by Access-Control-Allow-Origin.

谢谢你调查这个。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-12 07:48:28

我也在调查这件事大约8个月。我偶然发现了a blog post written by Martin Hawskey。我按照这里的指南,我能够设置一个HTML表单张贴到电子表格。

实际上,您可以在电子表格中设置一个可接收数据的已发布web应用程序。要绕过CORS问题,您需要在页面上定位一个隐藏的iframe。我想在这篇文章中复制代码,但有相当多的代码。

演示

我将提供一些我希望在我开始研究这篇文章时得到的建议。如果你可以..。尝试设置一个您可以使用的PHP服务器。发布数据要容易得多,也更灵活。我现在在工作中忠实地使用Zend GData,希望我能早点发现它:)

编辑

Marting Hawskey对此进行了更新,支持在不使用隐藏iframe的情况下提交AJAX。See here

票数 26
EN

Stack Overflow用户

发布于 2016-06-09 23:30:55

屏幕截图的分步说明

在阅读了Martin Hawskey的很好的介绍(将数据从超文本标记语言表单发送到谷歌电子表格)并看到一些差距/假设之后,我们决定编写一个详细/全面的教程,其中包含分步说明,一些人发现它很有用:

https://github.com/dwyl/-form--email-via--without-server

该脚本将通过HTTP POST发送的所有数据保存在谷歌电子表格中,并可选择将内容转发到电子邮件地址。(如果您希望收到新数据的通知,则非常有用)

HTML表单:

结果(工作表中的行):

希望它能帮助其他人。

票数 39
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19887737

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档