Я использую WEB API 2 с VB.NET для создания простой службы REST, я совершенно не знаком с ней.
Допустим, у меня есть этот контроллер.
<RoutePrefix("api/Login")>
Public Class LoginController
Inherits ApiController
<Route("GetTest")>
Public Function GetTest() As IHttpActionResult
End Function
<Route("GetLogin")>
Public Function GetLogin(ByVal Username As String, ByVal Password As String) As IHttpActionResult
End Function
End Class
И этот WebApiConfig
Public Sub Register(ByVal config As HttpConfiguration)
config.MapHttpAttributeRoutes()
config.Routes.MapHttpRoute(
name: = "DefaultApi",
routeTemplate: = "api/{controller}/{action}/{id}",
defaults:=New With {.id = RouteParameter.Optional}
)
End Sub
Я не могу заставить работать функцию GetLogin. Я пытаюсь назвать это следующим образом: http: // localhost: PORT / api / Login / GetLogin? Имя пользователя = ИМЯ? Пароль = ПАРОЛЬ
пока функция GetTest работает нормально: http: // локальный: ПОРТ / api / Логин / GetTest
Пожалуйста, помогите мне понять и посоветуйте, как это нужно делать. Спасибо
Ооо, ты прав. Не понял этого, лол. Спасибо за подсказку, работает как шарм :)





Строка запроса URL-адреса начинается с
?, но параметры разделяются&, а не?. Именно так URL-адреса работали десятилетиями и не имеют ничего общего с .NET, веб-API или чем-то недавним.