如何使用.pem文件向.net中的Google Shopping API发出获取请求

时间:2017-10-09 14:31:04

标签: .net google-api pem

我的任务是从商家中心帐户检索数据Feed。我已经获得了一个.pem文件和一些用于在JavaScript中发出请求的示例代码...但是我被要求提供一个C#解决方案而且我很挣扎。

我特别想向https://www.googleapis.com/content/V2/[merchantId]/datafeedstatuses

提出请求

我有商家ID并了解范围。我想我从概念上理解oauth 2.0请求是如何工作的(虽然我之前已经提出了oauth 2.0请求)......但是我找不到任何示例代码来说明如何使用pem文件来发出其中一个请求。 / p>

如果有人能给我某个地方开始,我真的很感激。

1 个答案:

答案 0 :(得分:1)

我从未使用过Google的Shopping API。我使用电子邮件,目录,人api。这不简单。我检查了谷歌有他们的购物API的nuget包。您可能需要的是https://www.nuget.org/packages/Google.Apis.ShoppingContent.v2/。以下是我可以根据您的需求采用的一些代码:

var initializer = new ServiceAccountCredential.Initializer(GoogleSettings.ClientEmail)
{
    Scopes = GoogleSettings.Scopes,
    User = GoogleSettings.AdminAccount,
};
var initFromCert = initializer.FromPrivateKey(GoogleSettings.PrivateKey);
var credential = new ServiceAccountCredential(initFromCert);

然后是我使用的目录服务

var directoryService = new DirectoryService(new BaseClientService.Initializer
            {
                HttpClientInitializer = credential,
                ApplicationName = GoogleSettings.ProjectID,
            });

从Google项目设置下载的JSON中收集了所有GoogleSettings。在您的情况下,pem文件应包含可以提取的私钥。或者你需要得到它。