• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

ios - 在 Swift 中写入 Google 表格

[复制链接]
菜鸟教程小白 发表于 2022-12-11 20:49:16 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

我真的很困惑如何写入公开的 Excel 表格。到目前为止,我已经下载了 AlamofireGoogleAPIClientForREST cocoapods。所以我想知道,如果我想写信给工作表,我首先需要实现一个谷歌登录,还是我可以使用 Alamofire 发送数据。我非常迷茫,所以如果有人可以帮助我,那就太好了。

Google 表格:https://docs.google.com/spreadsheets/d/1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0/edit#gid=0

func makeAndSendRequest() {
    let baseUrl = "https://sheets.googleapis.com/v4/spreadsheets"
    let spreadsheetId = "1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0"
    let params = ["valueInputOption": "RAW"]
    let range = "Studen!A3:B3"
    //need to add params
    let url = baseUrl + "/" + spreadsheetId + "/values/" + range + "/valueInputOption=RAW/"

    let fullUrl = URL(string: url)!

    //my values
    let requestParams = [
        "values": [
            1,
            2
        ]
    ]


    //my auth is after Bearer so "Bearer 901390"
    let header = ["Authorization":"Bearer "]
    let requestURL = "https://sheets.googleapis.com/v4/spreadsheets/\(spreadsheetId)/values/\(range)?valueInputOption=RAW"
    let req = Alamofire.request(requestURL, method: .put, parameters: requestParams, encoding: JSONEncoding.default,headers: header)
    req.responseJSON { response in debugPrint(response) }

}



Best Answer-推荐答案


尝试先解决这个问题。

valueInputOption 为查询参数,见:https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update

你的网址至少应该是:

让 url = baseUrl + "/"+ spreadsheetId + "/values/"+ range + "?valueInputOption=RAW"

接下来您需要修正您的请求正文,此处需要每个文档的范围:https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update

{ “范围”:“A3:B3”, “值(value)观”:[ [ 1、 2 ] ] }

此范围应与查询参数中的范围相同,例如 Sheet1!:A3:B3 与查询参数中的范围相同。

注意,它以工作表名称开头,不应该是“studen”

我在同一页面上使用了 Playground 工具,并且能够调用 api 来更改电子表格中的数据。

最后我得到 200 响应代码和以下 json: { “电子表格ID”:“1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0”, "updatedRange": "Sheet1!A3:B3", “更新行”:1, “更新的列”:2, “更新的细胞”:2 }

----- 编辑 ----- 如您所问,API 需要 Oauth token ,处理此问题的框架实际上称为 G Suite

请在此处找到指南: https://developers.google.com/gsuite/guides/ios

关于ios - 在 Swift 中写入 Google 表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53293814/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap