Кто-нибудь имел опыт использования Google переводчика API v2 для перевода HTML с использованием PHP CURL по методу POST?
Я попробовал несколько кодов и библиотек из 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, если вы хотите отправить больше данных в одном запросе. Параметр q в теле POST должен содержать не более 5К символов. Чтобы использовать POST, вы должны использовать заголовок X-HTTP-Method-Override, чтобы указать Translate API для обработки запроса как GET (используйте X-HTTP-Method-Override: GET).
Других решений пока нет …