如果我传递一个字符串(英语或阿拉伯语)作为Google Translate API的输入,它应该将其翻译成相应的其他语言并将翻译后的字符串提供给我.
我在一个论坛上阅读了相同的案例,但对我来说很难实现.
我需要没有任何按钮的翻译器,如果我给出输入字符串,它应该自动转换值并给出输出.
你能救吗?
我正在使用Google API Client Library for Java来获取有关在我的Android应用程序中购买的用户订阅的信息.这就是我现在正在做的事情:
HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
JsonFactory JSON_FACTORY = new JacksonFactory();
GoogleCredential credential = new GoogleCredential.Builder().setTransport(HTTP_TRANSPORT)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(GOOGLE_CLIENT_MAIL)
.setServiceAccountScopes("https://www.googleapis.com/auth/androidpublisher")
.setServiceAccountPrivateKeyFromP12File(new File(GOOGLE_KEY_FILE_PATH))
.build();
Androidpublisher publisher = new Androidpublisher.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential).
setApplicationName(GOOGLE_PRODUCT_NAME).
build();
Androidpublisher.Purchases purchases = publisher.purchases();
Get get = purchases.get("XXXXX", subscriptionId, token);
SubscriptionPurchase subscripcion = get.execute(); //Exception returned here
Run Code Online (Sandbox Code Playgroud)
GOOGLE_CLIENT_MAIL是来自Google控制台的API Access的电子邮件地址.
GOOGLE_KEY_FILE_PATH是从API Access下载的p12文件.
GOOGLE_PRODUCT_NAME是品牌信息的产品名称.
在Google APIS控制台中,启用了"Google Play Android Developer API"服务.
我得到的是:
{
"code" : 401,
"errors" : [ {
"domain" : "androidpublisher",
"message" …Run Code Online (Sandbox Code Playgroud) 由于Google已弃用YouTube v2 API,因此我找不到从视频中获取所有评论的方法.
是否可以使用单个未弃用的API(Google +,YT v3)来执行此操作?
我不担心保持线程.
我们目前用于google-api-python-client处理面向用户的 OAuth 流程。我们有一些用户给我们发电子邮件询问为什么他们的帐户没有成功导入,当我们查看时,他们的令牌没有适当的范围。例如,我们希望找到所有这些范围:
https://www.googleapis.com/auth/gmail.metadata
openid
https://www.googleapis.com/auth/userinfo.email
但我们只收到最后 2 个。当我们查看 OAuth 流程时,我们注意到我们的 OAuth 流程如下所示(应用程序名称和帐户名称经过编辑)。请注意,请求的范围有一个复选框,并且默认情况下该复选框处于未选中状态。(从 2020 年中期到大约一周前,此流程有 2 个额外的确认步骤,但默认情况下选中了最后一个复选框。)
将其与流行应用程序 Fantastical 的 OAuth 流程进行比较(许多其他应用程序,包括 Spark,看起来很相似):
在找到链接到Google 博客上这篇文章的StackOverflow 答案后,似乎有些应用程序已继承到第二个流程,但第一个流程是新的默认流程。两个问题:
默认情况下未选中的复选框似乎是一个相对较新的更改,我找不到任何有关它的文档。这是新的默认行为,还是 OAuth 流程中是否有一个参数/某些内容我们可以更改以默认检查它?当未选中时,用户认为他们不需要检查它,因此他们按“继续”,然后我们的应用程序必须抛出错误并向用户解释他们需要检查该范围复选框。现在复选框未选中似乎有点疯狂,因为它是我明确要求的范围……这就是此流程的全部要点。
有没有什么方法可以使我们的流程与 Fantastical、Spark 以及 2018 年左右之前创建的任何其他 OAuth 应用程序仍然具有的旧的、更简单的流程保持一致?或者那些其他旧应用程序是否有过渡到新流程的预计到达时间?上述 Google 博文表示,新流程将“在 2019 年初扩展到现有客户”,因此我们大约晚了 2.5 年才做出这一改变。就目前情况而言,它使“新”OAuth 应用程序(我们的应用程序是在 2019 年创建的,所以算不上新......)处于令人难以置信的劣势,因为它的步骤更多,需要明确同意,更容易出现用户错误,并且使它看起来像我们的应用程序在任何方面都受到较少的审查或“安全”,因为其流程与用户接受的许多其他应用程序的培训流程截然不同。
这个问题已经存在了几个月了,所以也发布这篇文章来帮助处于相同位置的其他人。一些额外的要点,以防对任何人有帮助:
如果我从 Fantastical 流程中获取 client_id 和 redirect_url 并在我们应用程序的链接中使用它,则该流程看起来与他们的相同。所以它似乎是由客户端 ID 驱动的,而不是 URL 或我们流程中发生的某些事情。
我们的应用已通过 Google 的第三方安全评估并通过,因此它可能与我们请求的范围或我们的应用在审批流程中的状态无关
我们的流程和 Fantastical 都发生在 Web 视图中,因此它不太可能与本地与 Web 视图相关 …
google-api google-oauth google-api-python-client google-cloud-platform gmail-api
我正在使用Google .NET API从谷歌分析中获取分析数据.
这是我开始身份验证的代码:
IAuthorizationCodeFlow flow =
new GoogleAuthorizationCodeFlow(new GoogleAuthorizationCodeFlow.Initializer
{
ClientSecrets = new ClientSecrets
{
ClientId = googleApiClientId,
ClientSecret = googleApiClientSecret
},
Scopes = new[] {
Google.Apis.Analytics.v3.AnalyticsService.Scope.AnalyticsReadonly
},
DataStore = new Google.Apis.Util.Store.FileDataStore("Test_GoogleApi")
});
Run Code Online (Sandbox Code Playgroud)
它使用FileDataStore作为文件存储在本地用户配置文件中.我在ASP.NET应用程序中运行此代码,因此我无法真正使用该FileDataStore,因此我需要的是获取数据的其他方法.
Google.Apis.Util.Store仅包含FileDataStore和IDataStore的接口.在我开始实现自己的DataStore之前 - 是否还有其他可供下载的DataStore对象?
谢谢
前段时间我Oauth2 client id在Google API控制台中为Android应用程序创建了一个示例项目(让我们称之为"示例项目").我还添加了SHA1 fingerprint包名(例如com.package.name).
我的错误是已经存在具有相同包名的应用程序.现在我需要Oauth2 client id在包含名称的"有效项目"中创建一个for android应用程序,我之前添加com.package.name了SHA1 fingerprint它.显然,当我尝试添加此指纹时,我收到了一个错误.
The signing fingerprint you specified is already used by another Android OAuth2 client.
Run Code Online (Sandbox Code Playgroud)
之后我记得"示例项目"并client id从该项目中删除.问题是我仍然无法为包名添加此指纹com.package.name.Client id被删除,但我仍然有与上面相同的错误.
那么我是否有可能在另一个项目中将此指纹用于相同的包名称?
我正在使用Google新发布的Gmail API的python版本.
以下调用仅返回消息ID列表:
service.users().messages().list(userId = 'me').execute()
Run Code Online (Sandbox Code Playgroud)
但后来我只有一个消息ID列表,需要迭代它们并逐个获取它们.
有没有办法在单个调用中获取id列表的整个消息内容?(类似于在Google Calendar API中完成的操作)?
如果还不支持,Google会考虑在API中添加这些内容吗?
这是适合我的解决方案:
batch = BatchHttpRequest()
for msg_id in message_ids:
batch.add(service.users().messages().get(userId = 'me', id = msg_id['id']), callback = mycallbackfunc)
batch.execute()
在我的Google Play控制台中,我链接了一个项目.然后我创建了一个服务帐户.尽管如此,在刷新控制台时,仍然会说"没有与您的项目关联的服务帐户".已经等了24个多小时了.所有这一切的目的是收据验证.
android google-api service-accounts receipt-validation google-play-console
在尝试向Google进行身份验证时,我们正面临以下屏幕.我们尝试进行身份验证的应用程序用于内部开发,我们没有将其发布给用户.
知道为什么会这样吗?
我们之前遇到了未验证的应用程序屏幕(如下所示),但现在身份验证已禁用.
我正在开发一个使用Google URL缩短器API的玩具程序.要缩短网址,您需要发送此请求:
POST https://www.googleapis.com/urlshortener/v1/url
Content-Type: application/json
{"longUrl": "http://www.google.com/"}
Run Code Online (Sandbox Code Playgroud)
你会得到这个作为回应:
{
"kind": "urlshortener#url",
"id": "http://goo.gl/fbsS",
"longUrl": "http://www.google.com/"
}
Run Code Online (Sandbox Code Playgroud)
起初我使用Network.HTTP,但发现它不支持HTTPS,而Google的API仅支持HTTPS.所以我转向Network.Curl.我发现HTTP GET有一个方便的功能
curlGetString :: URLString -> [CurlOption] -> IO (CurlCode, String)
Run Code Online (Sandbox Code Playgroud)
但HTTP POST没有这样的功能.更糟糕的是,我找不到获取HTTP POST响应数据的方法.我所知道的是我可以使用发出HTTP POST请求
curlPost :: URLString -> [String] -> IO ()
Run Code Online (Sandbox Code Playgroud)
谁能告诉我一个出路?谢谢.
google-api ×10
android ×3
google-oauth ×3
gmail-api ×2
google-plus ×2
java ×2
api ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
google-play ×1
haskell ×1
https ×1
oauth-2.0 ×1
oauth2client ×1
python ×1
subscription ×1
youtube-api ×1