当前位置: 首页 > 知识库问答 >
问题:

使用带有简单API密钥的Google Cloud Vision API

子车俊材
2023-03-14

如果我通过设置GOOGLE_APPLICATION_CREDENTIALS环境变量为正确的“服务帐户”引用json文件来使用隐式默认凭据,下面的快速入门代码可以很好地工作。

// Imports the Google Cloud client library
import com.google.cloud.vision.spi.v1.ImageAnnotatorClient;
import com.google.cloud.vision.v1.AnnotateImageRequest;
import com.google.cloud.vision.v1.AnnotateImageResponse;
import com.google.cloud.vision.v1.BatchAnnotateImagesResponse;

...


public class QuickstartSample {
  public static void main(String... args) throws Exception {
    // Instantiates a client
    ImageAnnotatorClient vision = ImageAnnotatorClient.create();

    ...

    BatchAnnotateImagesResponse response = vision.batchAnnotateImages(requests);
    List<AnnotateImageResponse> responses = response.getResponsesList();

    ...
  }
}

但是,我希望使用简单(单字符串)API密钥而不是服务帐户对API进行身份验证,而且我找不到解释如何通过这个java库进行身份验证的文档。有可能吗?

共有1个答案

穆英飙
2023-03-14

可以:创建ImageAnnotatorSettings,如下所示:

ImageAnnotatorSettings ias = ImageAnnotatorSettings.newBuilder()
        .setCredentialsProvider(
                FixedCredentialsProvider.create(#InputStream of your json key#)
        )
        .build();

替换您的线路

ImageAnnotatorClient vision = ImageAnnotatorClient.create();

ImageAnnotatorClient vision = ImageAnnotatorClient.create(ias);
 类似资料:
  • Swagger支持api密钥的安全性,但这似乎仅限于单个参数。 有没有办法定义一组参数(key和secret)作为请求中的参数? 或者,唯一的方法就是跳过安全方案,只将这些参数添加到每个请求中?

  • 这是我的PHP应用程序访问CIRest库的代码。当我禁用api键时,它看起来很好。这是json结果如下: 当我尝试在rest库中启用api密钥时。我收到这个 正在我的终端上尝试: 我知道了 卷曲 关于PHP 测试。php 我是不是漏了什么?

  • 我得到异常“http://api.openweathermap.org/data/2.5/weather?q=sydney”。有人能帮忙怎么用吗。当我粘贴以下内容时,可以很好地使用web浏览器 我也试过下面的组合,但没有运气

  • 假设我有一个IP地址,192.168.1.1 我想让我的程序基于这个IP地址创建一个随机的单字字符串,它可以很容易地解密,而无需密钥或密码或额外的安全措施。 例如。 我进入192.168.1.1 程序将其转换为AzlQrEHCSD或其他一些随机字符串 我在程序中输入这个字符串 它被转换回192.168.1.1 有没有简单的算法可以在不生成密钥或其他密码的情况下做到这一点?我知道密钥和密码是加密和解

  • 我正在使用codeigniter rest服务器api库。 我进去的时候http://localhost/projects/myapi/key/index_put.php然后按enter键会出现以下错误: 当我在url中给出一个伪字符串时,如: http://localhost/projects/myapi/key/index_put.php?X-API-KEY=ASLDFJ9ALSDJFLJA9

  • 我有一个使用AES-256密钥加密文件的小程序。用于加密文件的密钥是随机生成的。 加密程序如下所示: 获取加密上下文- 加密的文件是一个小的包含字符串的文件:“只是一个测试”。因此,文件中的原始十六进制字节是: 用于十六进制格式加密的AES-256密钥为: 3f10e23bb1a5dfd9c8ca06195e43043386a9ba4c63c35ac518f463ba768f001b 加密文件