【问题标题】:Make JSON use POST requested instead of GET with ASP使 JSON 使用 POST 请求而不是 GET 与 ASP
【发布时间】:2012-01-17 17:50:26
【问题描述】:

我正在使用 Google Translator v2 服务,它适用于小文本。对于大文本,Google 给出了关于发送 POST 请求而不是 GET 的提示。这很有意义。我只是不明白该怎么做。如果我使用以下代码并将“GET”替换为“POST”,我仍然会收到错误“414:URI 太长”。谁能帮助我了解如何使用 POST 让 JSON 函数工作,以便我可以请求更大的文本?

$.ajax({
  type: "GET",
  url: "https://www.googleapis.com/language/translate/v2",
  data: { key: "<key>", source: FromLang, target: DestLang, q: Text },
  dataType: 'jsonp',
  success: function (data) {
    var ReturnedTextalert = data.data.translations[0].translatedText;
    setEditor(ReturnedTextalert, LongLang, DestField);
  },
  error: function (data) {
   alert('fail');
  }
});

【问题讨论】:

  • 您确定使用 JavaScript 强制刷新页面吗?发生在我身上几次,它没有正确加载更新的脚本,即使浏览器中的编辑器显示它与实际加载的内容不同步。 CTRL+F5 帮我解决了。
  • 我显然试过了,再试一次。清除缓存等没有效果。错误控制台给了我一个 414,还说“GET”太长了。这意味着即使我在 JSON 函数中添加了“POST”,它仍然被视为“GET”。

标签: json asp-classic google-translate


【解决方案1】:

有趣。我对 v1 有同样的问题,但谷歌修复了它。我一直在使用(免费)必应翻译器,它的每一点都和谷歌一样好用,而且似乎没有相同的最大 500 字节。问题。这是我首先使用 Google 和现在 Bing 编写的 jQuery 插件:jquery.bunkerhill.com。

【讨论】:

  • 在 v1 中,我有一个函数可以用不同的块重复调用。我会继续附加大量翻译文本,直到完整文本被翻译。效果很好,只是 JSON 没那么简单。我试图重复呼叫(即使是在 JSON 中的“成功”中,但 Google 只翻译最新的呼叫,而不是我的所有呼叫。如果我没有为 Google 找到解决方案,我肯定会尝试您的 Bing 解决方案!谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-28
  • 2013-09-24
  • 1970-01-01
  • 1970-01-01
  • 2018-10-29
  • 2020-11-12
相关资源
最近更新 更多