Я создал приложение ASP.net Web API.Это приложение имеет API, который получает идентификатор sku Id и токен покупки из моего приложения для Android, проверяет покупку и возвращает соответствующий результат.Теперь проблема в том, что когда я запускаю свое приложение локально, оно работает нормально.Google возвращает мне ответ, и я могу обработать его.Но когда я размещаю это приложение на своем общем хостинг-сервере Windows, этот вызов не выполняется.Просто происходит сбой, нет ошибки.
Вот мой веб-API.
[HttpPost]
[Route("Api/Files/GetFiles")]
public HttpResponseMessage GetFiles(FileInfo fileInfo)
{
string skuId = fileInfo.SkuId;
string purchaseToken = fileInfo.PurchaseToken;
ProductPurchase productPurchase = GoogleAPIConnector.GetProductPurchaseInfo(skuId, purchaseToken);
}
Вот функция GetProductPurchaseInfo.
public static ProductPurchase GetProductPurchaseInfo(string productId, string purchaseToken)
{
string packageName = "my.package.name";
string sFileContents = "my p12 file contents as a byte array";
byte[] baFileContents = Convert.FromBase64String(sFileContents);
var certificate = new X509Certificate2(baFileContents,
"notasecret",
X509KeyStorageFlags.Exportable | X509KeyStorageFlags.MachineKeySet
);
var credentials = new ServiceAccountCredential(
new ServiceAccountCredential.Initializer("my publisher account on google play service")
{
Scopes = new[] { AndroidPublisherService.Scope.Androidpublisher }
}.FromCertificate(certificate));
var service = new AndroidPublisherService(new BaseClientService.Initializer()
{
HttpClientInitializer = credentials,
ApplicationName = "my application name",
});
return service.Purchases.Products.Get(packageName, productId, purchaseToken).Execute();
}
Я нахожусь вмое остроумие заканчивается попыткой найти решение.Может ли это быть из-за того, что вызовы API запрещены в среде общего хостинга?Я думаю, что это может быть единственной причиной, потому что этот вызов успешен, когда приложение запускается локально.Или мне не хватает конфигурации на сервере?