我们有一个网站,我们需要使用google translate api将此网站翻译成artabic。当我尝试使用c#后端代码执行此操作时,我在使用api密钥uri发出请求时出现此错误。
错误
System.Net.WebException: The remote server returned an error: (403) Forbidden. at System.Net.WebClient.DownloadDataInternal(Uri address);
我不知道任何人都可以帮到哪个错误?
This is how my uri is formed string l_strURL ="https://www.googleapis.com/language/translate/v2?key=xxxxxxxxxxxxxxxxxxxxxxxxxxxxx&source=en&target=ar&q=" + in_strString;
var in_string is the data to be translated
这是我的代码
string l_strTranslation = in_strString;
try
{
WebClient l_oWebClient = new WebClient();
string l_strResult = "";
//Notify the webclient we're expecting UTF-8
l_oWebClient.Encoding = System.Text.Encoding.UTF8;
//l_oWebClient.Credentials = credentials;
//l_oWebClient.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials;
l_strResult = l_oWebClient.DownloadString(l_strURL);
}
答案 0 :(得分:2)
更新:
有免费配额吗?不,Google翻译API仅限 作为付费服务提供。有关更多信息,请参阅定价和支持 细节。但是我们提供Google网站翻译小工具, 这将免费翻译您的网站。
https://developers.google.com/translate/v2/faq
调用API时出现HTTP 403错误。你可能超过你的 配额:每日可结算总额或要求限额 每秒字符数。查看或更改您的使用限制 项目,或要求增加你的总限额,做 以下内容:
转到Google云端控制台。选择一个项目。在侧边栏上 在左边,选择API& auth,然后选择一个API。关于API的信息 页面,选择API名称附近的配额链接。