代码之家  ›  专栏  ›  技术社区  ›  SolidSnake4444

C#MVC控制器重定向到Tel、SMS和mailto链接

  •  1
  • SolidSnake4444  · 技术社区  · 6 年前

    我有一个MVC网站,我希望点击一个网站URL,然后根据传入的参数,显示本机电话接口、电子邮件接口或SMS接口。

    我可以通过在网络浏览器中输入界面来获得智能手机上的每个界面。例如,如果我在iphone上进入safarai并键入tel:55555555,则会出现电话提示,并填写555555。

    如何从MVC控制器重定向到接口?

    1 回复  |  直到 6 年前
        1
  •  4
  •   Markus    6 年前

    向调用响应的控制器添加控制器操作。使用适当的协议重定向。例如:

    public class HomeController : Controller
    {
        public ActionResult Phone()
        {
            Response.Redirect("tel:5551212");
            return new EmptyResult();
        }
    }
    

    当点击此控制器操作时,它会提示浏览器重定向并尝试打开手机应用程序。在我的情况下,它会打开Skype。当然,您可以修改控制器操作,根据参数使用不同的协议重定向。

    调用此控制器操作的URL很简单 http://whatever/home/phone 。您还可以将此控制器操作缩短为:

    public ActionResult Phone()
    {
        return Redirect("tel:5551212");
    }
    

    在我看来,这有点漂亮。这里回答了一个类似的问题:

    In ASP.NET MVC, how does response.redirect work?