2013-03-15 134 views
5

我创建了一个新项目并开启了YouTube Data API v3。在API访问面板中,我创建了浏览器应用程序(包含查找程序)的关键字,可以正常工作。我继续为iOS应用程序创建密钥(使用包标识符)。一切看起来很好我已经检查了捆绑ID 10次,我相信它是正确的。但是,如果我使用的是iOS API密钥继续创建的NSURLRequest从我的iOS应用程序,我得到错误响应:Google YouTube API v3 iOS应用程序密钥,403错误代码

error =  { 
    code = 403; 
    errors =   (
        { 
      domain = usageLimits; 
      message = "Access Not Configured"; 
      reason = accessNotConfigured; 
     } 
    ); 
    message = "Access Not Configured"; 
}; 
} 

使用相同的URL仅通过我的主要浏览器的应用程序(与参照网址)没有任何问题的工作。

NSString *string=[NSString stringWithFormat:@"https://www.googleapis.com/youtube/v3/videos?id=7lCDEYXw3mM&key=%@&fields=items(id,snippet(channelId,title,categoryId),statistics(viewCount))&part=snippet,statistics",key]; 

我对什么是这里的问题真的很困惑,我一直在努力得到它现在iOS应用重点工作数小时。有什么明显的我失踪了吗?

+1

我会建议在问https://开头groups.google.com/forum/?fromgroups#!forum/google-api-objectivec-client或在https://code.google.com/p/google-api-objectivec-client/issues/list开启问题这听起来像是Objective-C客户端库特有的东西。 – 2013-03-19 16:37:09

+0

感谢您的评论。您看到我没有使用Objective-C客户端库,我正在创建NSURLRequest,解析json响应等。现在您提到了,我怀疑我需要使用它,才能使用iOS api密钥。您是否有任何知识可以使用iOS应用的NSURLRequest与YouTube DATA API v3进行通信。正如我已经写了很多处理的代码。再次感谢您 – stringCode 2013-03-20 14:35:34

+2

我真的不知道iOS特有的API密钥是如何工作的 - 对不起!如果你只是从你的应用程序发出原始的HTTP请求,我实际上认为你想使用基于浏览器的密钥。 – 2013-03-20 16:24:11

回答

7

如果您从任何应用程序(iOS或其他)发出的原始HTTP请求,那么您可以包含“浏览器应用程序的密钥”作为key= URL参数,它应该足够了(至少对于只读,未经认证的电话)。

+2

截至目前,即使您使用sdk和GTLQueryYouTube对象发送查询,“浏览器应用程序的关键字”仍然有效。 – hariseldon78 2013-06-19 17:35:01

+0

@ hariseldon78,谢谢;然而,这让我感到困扰。 – Morkrom 2013-11-11 05:31:32

+0

@ hariseldon78谢谢。我为我工作。 :-) – duongvanthai 2014-12-03 10:58:23

0

这似乎是工作 - 添加为就像一个完整的WWW域名的HTTP引用: 铬扩展:// $ {} chrome.runtime.id/

相关问题