在delphi xe下调用百度的翻译api,百度支持get与post两种方法。想着get效率更高,于是打算数据量小的时候用get,要翻译的数据量大时用post提交。
要提交的数据 q=httpEncode(UTF8Encode(memo1.Text))
在get模式下运行正常。但post模式下总是提示签名错误。
全面检查代码发现没有问题。想来会不会是post的时候nethttpclient组件自动把参数又url编码了一次,导致服务器端解码的数据不对?
于是在post时取消 httpEncode 函数,然后运行正常了。
版权声明:本文为ufo2006原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。