【问题标题】:Does google-translate support CORS?谷歌翻译是否支持 CORS?
【发布时间】:2011-07-30 01:48:11
【问题描述】:

是否可以使用 google-translate (API v2) 访问

  • Javascript
  • 发布
  • 跨域资源共享 (CORS)

使用 GET 很容易做到,但 URL 限制为 2k 个字符(更像是 2072)。

要翻译的字符串是用encodeURIComponent 编码的。这意味着字符串的实际长度小于 360 个字符(希腊语)。看来我可以使用 POST 从 360 ch 到 5.000 ch,这是一个相当大的进步。

我知道我可以调用我的服务器并让它调用 google-translate,但如果 CORS 解决方案可行,这似乎有点过头了。

【问题讨论】:

    标签: javascript post google-translate cors


    【解决方案1】:

    我想你可以。 documentation 声明:

    您也可以使用 POST 来调用 API,如果你想在一个 单个请求。 q 参数在 POST 正文必须小于 5K 人物。要使用 POST,您必须使用 X-HTTP-Method-Override 标头到 告诉翻译 API 处理 作为 GET 请求(使用 X-HTTP-Method-Override: GET)。

    由于该 API 还支持 callback 参数,您可以创建 JSONP 请求,这意味着您可以跨域获取它。

    你不能用jQuery的ajax方法发出请求用dataType: "jsonp"type: "POST"发出请求吗?

    请注意,我还没有测试过。

    【讨论】:

    • 是的,我已阅读文档。我会用 javascript 试一试,但我想知道是否有人做过。
    • 关于您如何设置标题的任何信息?
    • @Elisabeth:jQuery 的ajax 方法还有一个headers 选项,您可以在其中指定任何自定义标头。请注意,您需要 jQuery 1.5 或更高版本才能使用它。
    猜你喜欢
    • 1970-01-01
    • 2019-05-29
    • 2014-03-17
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    相关资源
    最近更新 更多