ios - 在 Swift 中写入 Google 表格
<p><p>我真的很困惑如何写入公开的 Excel 表格。到目前为止,我已经下载了 <em>Alamofire</em> 和 <em>GoogleAPIClientForREST</em> cocoapods。所以我想知道,如果我想写信给工作表,我首先需要实现一个谷歌登录,还是我可以使用 <em>Alamofire</em> 发送数据。我非常迷茫,所以如果有人可以帮助我,那就太好了。</p>
<p>Google 表格:<a href="https://docs.google.com/spreadsheets/d/1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0/edit#gid=0" rel="noreferrer noopener nofollow">https://docs.google.com/spreadsheets/d/1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0/edit#gid=0</a> </p>
<pre><code>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) }
}
</code></pre></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>尝试先解决这个问题。</p>
<p><code>valueInputOption</code> 为查询参数,见:<a href="https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update" rel="noreferrer noopener nofollow">https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update</a> </p>
<p>你的网址至少应该是:</p>
<p><code>让 url = baseUrl + "/"+ spreadsheetId + "/values/"+ range + "?valueInputOption=RAW"</code></p>
<p>接下来您需要修正您的请求正文,此处需要每个文档的范围:<a href="https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update" rel="noreferrer noopener nofollow">https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/update</a> </p>
<p><code>
{
“范围”:“A3:B3”,
“值(value)观”:[
[
1、
2
]
]
}
</code></p>
<p>此范围应与查询参数中的范围相同,例如 <code>Sheet1!:A3:B3</code> 与查询参数中的范围相同。</p>
<p>注意,它以工作表名称开头,不应该是“studen”</p>
<p>我在同一页面上使用了 Playground 工具,并且能够调用 api 来更改电子表格中的数据。 </p>
<p>最后我得到 200 响应代码和以下 json:
<code>
{
“电子表格ID”:“1zJR0uk6Pb6BuxJihFyxwe4ipQdBY4E9FFR74geBj8p0”,
"updatedRange": "Sheet1!A3:B3",
“更新行”:1,
“更新的列”:2,
“更新的细胞”:2
}
</code></p>
<p>----- 编辑 -----
如您所问,API 需要 Oauthtoken ,处理此问题的框架实际上称为 <code>G Suite</code></p>
<p>请在此处找到指南:
<a href="https://developers.google.com/gsuite/guides/ios" rel="noreferrer noopener nofollow">https://developers.google.com/gsuite/guides/ios</a> </p></p>
<p style="font-size: 20px;">关于ios - 在 Swift 中写入 Google 表格,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/53293814/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/53293814/
</a>
</p>
页:
[1]