在开发 IMAP 时,我经常在 IMAP openssl 连接中输入原始命令,我正在尝试弄清楚如何让这个工具更有用。我通过
openssl s_client -connect imap.gmail.com:993 -crlf
(例如)
但是箭头键而不是导航打印出我只能称之为“奇怪的字符”:
t 登录 chetsteadman^[[D^[[D^[[D^[[D
(即左箭头)
理想情况下,我希望它能更像 bash shell。左箭头指向左,ctrl+a 指向行首,向上箭头指向上一行。
尝试弄清楚如何在 openssl 上获取此配置,并研究其他可能做得更好的工具。但我肯定需要一些低级的东西,特别是考虑到我目前正在调试 iCloud 中的行尾问题。
答案1
这可能是由于您的通信方式而发生的。像 IMAP 这样的协议是为计算机设计的,而不是为人类设计的,因此它们通常会忽略箭头键和退格键等控制序列。我在使用 HTTP 服务器时也遇到过同样的问题;我需要获取服务器命令非常正确,或者...HTTP 400(错误请求)。
我的解决方案是谨慎输入,或者提前在文本编辑器中编写请求,并根据需要将每个命令复制粘贴到终端(在您的情况下为 OpenSSL)窗口中。您还可以使用某种行编辑器,它一次接受并允许您编辑一行输入,然后在您按下回车键时将整行立即发送到服务器。但是,我没有使用过这样的方法,我不知道是否可以在不编写自己的代码的情况下使它们与 OpenSSL 配合使用。