有没有人有过使用PHP CURL on POST方法翻译v2的经验?
我已经尝试了来自github的几个代码和库,但它们都不适合我。我发现的是GET方法。
由于通过GET或查询字符串解析数据的限制,我无法发送大量HTML数据进行翻译。
我正在寻找一个解决方案/片段,可以使用CURL转换缓冲数据
发布于 2016-01-21 09:22:33
以下是我的解决方案
$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)。
https://stackoverflow.com/questions/30299652
复制