我正在尝试使用 Bing Spell Check API v5,但遇到了很多问题。
当用下面的句子请求 spell
或 proof
时,它返回 no flagged代币。
This is a long sentance with some mistakes in here. Its supposed to be a question but i can’t think of a long question. maybe that means i don’t have something selious to ask?
{"_type": "SpellCheck", "flaggedTokens": []}
如果我将请求文本限制为 128 个字符,它仍然有效。我在 Bing's API testing console 中对此进行了测试它有效。
我正在使用 PHP
(Http_Request2
) 的建议调用 API,使用 POST
变体.此外,我目前正在使用免费订阅,但如果该应用程序有效,我将进行升级。否则看起来我将不得不找到另一个 API,这是一种耻辱。
我已尝试通过多种不同的方式请求,以确保它不仅仅是我的代码。我使用过 cURL
和应用程序 PostMan
但都返回相同的 问题.
任何关于为什么会发生这种情况的见解都将不胜感激,因为它给了我数小时的困惑!
最佳答案
代码有效,文本不可靠,128 不是最大大小。 不知道为什么 Bing api 测试可以毫无问题地处理您的文本。
如何得出这些结论? 从 here 复制你最喜欢的实现或使用 postman (是的,它有效)。 使用 Post 或 Get 与文本大小无关。
尝试使用文本“Bill Gatas”,格式为 %20 或 +,结果与示例相同。确认您的代码有效。
接下来尝试以下文本,超过 128 个字符 (162)。它应该返回一个结果。
%20is%20a%20long%20Bill%20Gatas%20.Bill%20Gatas%20.Bill%20Gatas%20.Bill%20Gatas%20.Bill%20Gatas%20.Bill%20Gatas%20.Bill%20Gatas% 20.%20.Bill%20Gatas%20.%20.Bill%20
超过这个的任何结果都是空白的。 (尝试将 Gatas 添加到最后)。 现在the specification says url 中的最大值为 1500 个字符,并且“文本字符串、preContextText 和 postContextText 的组合长度不得超过 10,000 个字符”。 正如所指出的here , 拼写是为大约 9 个标记设计的。
因此,无论 Bing 测试网站在做什么,它都可能是一些批处理作业。 或者他们让证明实现起作用。
- (我试过了,结果一样,没有标记)
- (也为 v7 再次尝试了整个过程,结果相同,没有 token )
关于php - Bing 拼写检查 API,在 128 个字符后停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42362798/