获取自定义协议响应

时间:2012-11-13 21:10:42

标签: javascript http protocols response

我几天都在学习自定义协议,有一件事我不明白。 我知道如何使用自定义协议启动应用程序,但我的问题是,
是否可以使用javascript获取应用响应并在Web浏览器中打印?
例如,如果我将请求发送到协议 myapp:// ,那将打开一个用C#编写的应用程序,该应用程序将返回字符串“This is response”可以在Web浏览器中打印它吗?登记/> 如果是这样,你能帮助我完成它吗?
提前谢谢。

1 个答案:

答案 0 :(得分:3)

互联网协议并非完全与浏览器有关。

mailto:会在电子邮件程序中导致操作(例如,发送新电子邮件)

ftp:会导致FTP程序中的操作(可能会集成到Web浏览器或Windows资源管理器中)

gopher:(好吧,that's不再流行了)

myapp:// 会导致您的(C#)应用开始投放。此时,它可以执行C#应用程序可以执行的任何操作。它可以选择做的一件事是在磁盘上创建一个.html文件,然后使用

Process.Start("file://Path/To/My.html")

使默认Web浏览器打开刚刚创建的文档。

<强>更新

您当然可以让myapp://协议处理程序向托管相关页面的Web服务器发送更新。我的假设是myapp://处理程序在客户端计算机上运行,​​并且在不同的URL http://mydomain.com上有一个Web服务器,为包含myapp:// reference的页面提供服务。

  1. Web服务器呈现包含myapp:// URL和Ajax代码的页面,以定期查询Web服务器以获取部分HTML正文的更新。
  2. 用户点击myapp://网址
  3. 协议处理程序运行
  4. 协议处理程序向Web服务器发送更新,例如http://mydomain.com?user=joe&result=123
  5. Web服务器使用?user=joe&result=123在下次启动Ajax回调时更新响应
  6. Ajax回调从Web服务器获取页面更新数据,更新页面。