小编Juh*_*tta的帖子

使用 API 密钥 (C#) 将数据写入 Google 电子表格

我有一个应用程序允许我使用 API 密钥从 Google 电子表格中读取数据。我只是让 HTTP GET 到这个地址并得到一个带有数据的响应。

https://sheets.googleapis.com/v4/spreadsheets/18soCZy9H4ZGuu**********BeHlNY1lD8at-Pbjmf8c/values/Sheet1!A1?key=AIzaSyAYJ***********pB-4iKZjYf4y0vhXP8OM
Run Code Online (Sandbox Code Playgroud)

但是当我尝试使用 HTTP PUT 写数据来寻址时

https://sheets.googleapis.com/v4/spreadsheets/18soCZy9H4ZGuu**********BeHlNY1lD8at-Pbjmf8c/values/Sheet1!A4?valueInputOption=RAW?key=AIzaSyAYJ***********pB-4iKZjYf4y0vhXP8OM
Run Code Online (Sandbox Code Playgroud)

它给了我 401 错误。发出 PUT 请求的代码:

 using (WebClient wc = new WebClient())
 {
     byte[] res = wc.UploadData(link, "PUT", Encoding.ASCII.GetBytes(textBox1.Text));
     MessageBox.Show(Encoding.Default.GetString(res));
 }
Run Code Online (Sandbox Code Playgroud)

此外,电子表格是完全公开的,任何人都可以在未经授权的情况下读写。我的猜测是我不能使用 API Key 将数据写入电子表格,唯一的方法是使用 OAuth。

更新: 所以我刚刚尝试使用 Google.Apis.Sheets.v4 来写入值,现在我几乎 100% 确定 API 密钥不能用于将数据写入 Google 电子表格。好吧,那我就用 OAuth 2.0。

c# google-spreadsheet-api

5
推荐指数
1
解决办法
4766
查看次数

无法解决:com.crashlytics.sdk.android:crashlytics:2.6.7

我在我的项目的build.gradle文件中添加了以下内容:

Buildscript {
   repositories {
       jcenter()
   maven { url 'https://maven.fabric.io/public' }
}
dependencies {
   classpath 'io.fabric.tools:gradle:1.14.3'
}
Run Code Online (Sandbox Code Playgroud)

我在AndroidManifest.xml文件中添加了这个:

<meta-data
   android:name="io.fabric.ApiKey"
   android:value="apiKeyValue"/>
Run Code Online (Sandbox Code Playgroud)

我在build.gradle(app)文件中添加了这个:

apply plugin: 'io.fabric'
Run Code Online (Sandbox Code Playgroud)

以下依赖:

compile('com.crashlytics.sdk.android:crashlytics:2.6.7@aar') {
    transitive = true;
}
Run Code Online (Sandbox Code Playgroud)

毕竟,为什么不解决Crashlytics依赖?

android android-gradle-plugin google-fabric

5
推荐指数
1
解决办法
8481
查看次数