小编Pro*_*ing的帖子

Web Api错误:"找不到与请求URI匹配的HTTP资源"

我正在尝试创建一个Web Api控制器,允许我的用户使用他们的凭据(用户名,密码)登录该站点.

场景:

输入用户名和密码后,单击"登录".我需要获取此信息(用户名和密码),看看它是否存在于我的数据库的users表中.这部分是照顾的.当我将用户名和密码硬编码到我的代码时,它工作正常.如果凭证正确则我得到真实,如果错误则证明错误.现在,我如何从用户那里获取这些值 - URL或者我不知道的另一种方式?

目前,我收到以下错误:

 {"Message":"No HTTP resource was found that matches the request URI
 'http://localhost:4453/api/login/username/password'.","MessageDetail":"No
 action was found on the controller 'Login' that matches the request."}
Run Code Online (Sandbox Code Playgroud)

请记住,这是我第二天看Web Api.

这是我的代码我不知道出了什么问题.

控制器:

    public bool Get(string txtLoginId, string txtPassword)
    {
        Authenticate(txtLoginId, txtPassword);
        return loggedin;
    }
Run Code Online (Sandbox Code Playgroud)

WebApiConfig

public static class WebApiConfig
{
    public static void Authentication(HttpConfiguration config)
    {
        config.Routes.MapHttpRoute(
            name: "AuthenticationApi",
            routeTemplate: "api/{controller}/{user}/{pass}",
            defaults: new { user = RouteParameter.Optional, pass = RouteParameter.Optional }
        );

        var appXmlType = config.Formatters.XmlFormatter.SupportedMediaTypes.FirstOrDefault(t => t.MediaType == …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-web-api

5
推荐指数
1
解决办法
3万
查看次数

.NET Web API +会话超时

我正在使用web api控制器创建一个Web服务.我希望能够创建会话并检查会话的状态.我有以下内容:

控制器:

public string Get(string user, string pass)
{
        bool loginValue = false;
        loginValue = UserNamepassword(user, pass);

        if (loginValue == true)
        {
            HttpContext.Current.Session.Add("Username", user);                
            //session["Username"] = user; 
            //session.Add("Username", user);
            if ((string)HttpContext.Current.Session["Username"] != null)
            {
                HttpContext.Current.Session.Add("Time", DateTime.Now);

                return "Username: " + (string)HttpContext.Current.Session["Time"] + (string)HttpContext.Current.Session["Username"];
            }
            return "Logged in but session is not availabe for " + (string)HttpContext.Current.Session["Username"];
        }            
        else
            return "Login failed for " + user;
}
Run Code Online (Sandbox Code Playgroud)

WebConfig

public static void RegisterRoutes(RouteCollection routes)
    {
        var route = routes.MapHttpRoute(
            name: "SessionApi", …
Run Code Online (Sandbox Code Playgroud)

c# session-state asp.net-web-api

2
推荐指数
2
解决办法
9501
查看次数

标签 统计

asp.net-web-api ×2

c# ×2

session-state ×1