【问题标题】:Post REST request from HTML button to Grapevine将 REST 请求从 HTML 按钮发布到 Grapevine
【发布时间】:2020-10-06 10:31:56
【问题描述】:

我正在尝试使用 Grapevine 让我的 .NET 应用程序与网页交互。我目前正在学习中。

我有以下 REST 路由代码:

    <RestRoute(HttpMethod:=HttpMethod.[GET], PathInfo:="/controller")>
    Public Function PlayerControl(ByVal context As IHttpContext) As IHttpContext
        Dim word = If(context.Request.QueryString("word"), "what?")
        Console.WriteLine(word)
        context.Response.SendResponse(word)
        Return context
    End Function

在我的网络表单上我有:

 <form action="http://localhost:1234/controller" method="post">
         <input type="submit" name="?word=play" value="PLAY"/>
 </form>

帖子到达我的应用程序。我可以在控制台窗口中看到它。但它总是到达默认路由:

   <RestRoute>
    Public Function HelloWorld(ByVal context As IHttpContext) As IHttpContext
        Console.WriteLine(context.ToString)
        context.Response.SendResponse("Message arrived at dfault window")
        Return context
    End Function

我做错了什么?

【问题讨论】:

    标签: html rest button grapevine


    【解决方案1】:

    您的默认路由在 playercontrol 路由之前注册。默认路由一响应,playercontrol路由就不会被调用。

    要么删除默认路由,要么(如果您使用默认路由扫描器而不是手动注册路由)确保默认路由方法位于类中的 playercontrol 路由之后。如果这些路由不在同一个类中,请确保具有默认路由的类是

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-01
      • 1970-01-01
      • 2015-10-08
      • 2017-03-14
      • 2021-09-29
      • 2019-12-27
      相关资源
      最近更新 更多