我们有一个内部ASp.NET MVC应用程序,它接收来自外部系统的请求。请求看起来像这样:
http://test.com/abc/showinfo/12345678990
控制器操作
[Route]
public ActionResult Showinfo(string somenumber)
{
if (somenumber.Contains("1234"))
// Launch Chrome Browser
else
// Launch IE Browser
}
我尝试使用Process.Start(url),它在我的localbox中正常工作但在Dev服务器中失败。
是否可以在最终用户系统中启动浏览器?如果是,请告诉我相应的步骤。
答案 0 :(得分:0)
是否可以在最终用户系统中启动浏览器?
是
您可以使用PsExec来执行此操作。但请注意,如果您模拟凭据,它将以纯文本形式通过网络发送密码。
psexec \\marklap c:\thebrowserpath\thebrowser.exe
参考文献:
答案 1 :(得分:0)
System.Diagnostics.Process.Start("iexplore.exe", "http://google.com");
您可以将http://google.com替换为自定义网址
答案 2 :(得分:0)
我不知道您的解决方案是否可行,但我认为在客户端打开浏览器作为对您服务的答案的反应更为明智,即以下工作流程
根据客户端系统(是某种自定义应用程序/服务吗?)打开新浏览器可能非常简单(Process.Start()
或类似)。如果整个事情在浏览器中运行,它也可能只是打开一个新选项卡(如果它是相同的浏览器)。打开备用浏览器可能会很棘手,但可以在Chrome中使用Native Messaging(https://developer.chrome.com/extensions/nativeMessaging)