前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >探究Google Docs api 的详细过程(踩过的血泪坑)

探究Google Docs api 的详细过程(踩过的血泪坑)

作者头像
拿我格子衫来
发布2022-01-24 10:58:51
1.3K0
发布2022-01-24 10:58:51
举报
文章被收录于专栏:TopFETopFE

2019年11月14日22:14:38

近一段时间下班了一直在看Google Docs API, 主要是我们项目中有一个合同打印的功能,目前是上传Word标准合同,然后再有后端使用Java将一些合同信息填充进去,一些客户,服务条款。这么做其实是很low的办法,还有什么开启审阅模式。为了上线这个功能,我们公司还特意买了一个windows系统的服务器,用于处理word的打印,转换pdf。

在我看来,我们要做的功能别人肯定也都做过,肯定也有成熟的方案了。于是我一顿搜,找到了几个比较类似的例子,

  1. Google Docs API
  2. 腾讯文档
  3. 石墨文档

目前这个腾讯文档吧,虽然开放了文档,但没地方注册试用,调试。找了几次商务也没找到,

石墨文档吧,上来就是收费。 放弃吧。

最后还是只能寄希望于大Google了,其实后面的都是仿照了Google来的。 这个是我猜测的。

Google Docs API

那就开始看吧,一头埋在了Google的谷歌文档,看他们QuickStart 文档,运行了Node.js和Python 都报同一个错误,timeout

曾经我一度以为是我配置的凭据有问题,但反复检查后,感觉也没问题啊。最后应我把问题归结为网络问题,由于墙的缘故。

目前这个问题我还没有解决,写这篇博客就是为了记录我探索Google Docs api 的历程。 记录我的艰辛。以及我所学到的东西。

问题一,运行Google Docs API. Node.js Quickstart 报timeout

错误信息

代码语言:javascript
复制
Error retrieving access token { FetchError: request to https://oauth2.googleapis.com/token failed, reason: read ECONNRESET
    at ClientRequest.<anonymous> (E:\GITRespon\node_quickstart\node_modules\node-fetch\lib\index.js:1455:11)
    at ClientRequest.emit (events.js:182:13)
    at TLSSocket.socketErrorListener (_http_client.js:392:9)
    at TLSSocket.emit (events.js:182:13)
    at emitErrorNT (internal/streams/destroy.js:82:8)
    at emitErrorAndCloseNT (internal/streams/destroy.js:50:3)
    at process._tickCallback (internal/process/next_tick.js:63:19)
  message:

这个问题已经阻挡我很久了, 我尝试了能搜索到的所有资料,关闭360,修改端口,添加host映射, 在github提交Issues 重新配置凭据

目前我已经知道了可以通过Google Apps Script 来操作word 而且还可以操作excel ppt

另外我还有以下不明白的点

1:如果要线上使用,是否还是要这样授权,使用google的回调函数, 登录google账号?

2:怎么去在线编辑word?编辑word的服务可以自己部署还是需要买Google的服务?

3:如何处理外wang不能访问的问题?

4:Gsuit 是个什么东西,需要付费吗? 有什么用处?

后面我会继续研究这个东西,争取能够有一天使用它做出一个产品来。

2019年11月19日10:16:29

目前已经搞清楚了,可以使用js调取谷歌docs api 去创建,去获取docs的详情.

doc的数据结构是一个用json描述的.

文档是在谷歌账号的driver中存储的. 了解了一下 app script的使用

那么问题来了,

  1. 如果搭建一个像谷歌那样的文档编辑器?
  2. 如果搭建一个在自己服务存储docs 文档,这些数据又改如何和google docs api 交互?如何进行编辑,修改
  3. 使用js调取api是总是显示很多授权,如何静默授权?不可能每次编辑都要用户登录google,进行授权吧?

2019年11月19日22:26:16

经过多方调研,我已经知道,Google 的文档编辑器不是开源的,并且不能独自部署,不能集成。

了解了一下OAuth 2.0 的授权机制。

意思是说如果你要做用在线文档编辑,除了用谷歌的文档api还要开发一个在线文档编辑器。

  1. 如果copy一份文档,并且替换其中的模板字符串?
  2. 如果将一个文档下载word 下载pdf?
  3. 能否开启预览?查看审批的信息?

下一步就是线上合同demo

基本思路就是,先创建一个合同模板,预设一些变量,调用一个更新方法,替换其中的变量

其中有可能修改一些条款,可能新增一个列表, 可能增加一个图片

然后下载word 在线预览pdf

如此这般,这般

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2019年11月14日22:14:38
  • 2019年11月19日10:16:29
  • 2019年11月19日22:26:16
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档