lorniu / go-translate

Translator on Emacs. Supports multiple engines such as Google, Bing, deepL, ChatGPT, StarDict, Youdao and so on.
GNU General Public License v3.0
274 stars 37 forks source link

Always get an "Empty response" when using gts-google-engine #34

Closed Claude-Ray closed 2 years ago

Claude-Ray commented 2 years ago
(setq gts-default-translator
      (gts-translator
       :picker (gts-noprompt-picker)
       :engines (list (gts-google-engine) (gts-google-rpc-engine) (gts-bing-engine))
       :render (gts-buffer-render)))

image

lorniu commented 2 years ago

也许是 http://translate.googleapis.com 访问不了了,需要挂代理。

Claude-Ray commented 2 years ago

我可以访问 google api ,问题是 url-retrieve 获取到的 status 是 nil

(setq url "http://translate.googleapis.com/translate_a/single?client=gtx&ie=UTF-8&oe=UTF-8&dt=bd&dt=ex&dt=ld&dt=md&dt=qc&dt=rw&dt=rm&dt=ss&dt=t&dt=at&pc=1&otf=1&srcrom=1&ssel=0&tsel=0&hl=zh&sl=en&tl=zh&q=request&tk=48765.404526")
(url-retrieve url (lambda (status) (print status)))

如果我注释掉 ((null status) "Empty response"),gts-google-engine 就可以正常渲染

emacs-version 28.1

lorniu commented 2 years ago

((null status) "Empty response") 改成 ((null url-http-end-of-headers) "Empty response") 能不能正常渲染?

Claude-Ray commented 2 years ago

改完可以

lorniu commented 2 years ago

Thanks.