有人有过使用 Google 翻译 API v2 在 POST 方法上使用 PHP CURL 翻译 HTML 的经验吗?
我已经尝试了 github 上的几个代码和库,但没有一个适合我。我发现的是 GET 方法。
由于通过 GET 或查询字符串解析数据的限制,我无法发送大型 HTML 数据进行翻译。
我正在寻找一个解决方案/片段,可以使用 CURL 转换缓冲数据
这是我的解决方案
$handle = curl_init();
if (FALSE === $handle)
throw new Exception('failed to initialize');
curl_setopt($handle, CURLOPT_URL,'https://www.googleapis.com/language/translate/v2');
curl_setopt($handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($handle, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($handle, CURLOPT_POSTFIELDS, array('key'=> 'apikey', 'q' => 'Testing message', 'source' => 'en', 'target' => 'cs'));
curl_setopt($handle,CURLOPT_HTTPHEADER,array('X-HTTP-Method-Override: GET'));
$response = curl_exec($handle);
如果您想在单个请求中发送更多数据,您还可以使用 POST 调用 API。 POST 正文中的 q 参数必须少于 5K 个字符。要使用 POST,您必须使用 X-HTTP-Method-Override 标头来告诉 Translate API 将请求视为 GET(使用 X-HTTP-Method-Override: GET)。
谷歌翻译 API 文档 https://cloud.google.com/translate/v2/using_rest?csw=1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)