【发布时间】:2016-11-19 09:06:06
【问题描述】:
我对 c# 和 asp.net 编程有点陌生,我只想为我的 android 应用程序构建一个 rest api 来登录和注册。但我在登录(登录)时遇到问题。
问题是我刚刚在下面写了这段代码:
namespace CPanel.Controllers
{
public class DashboardController : Controller
{
// GET: Dashboard
public ActionResult CreateUser()
{
return View();
}
[HttpPost]
public ActionResult CreateUser(string username,string password)
{
CPanel.Models.CPanelEntities1 db = new Models.CPanelEntities1();
db.USP_AddUSer(username, password);
return View();
}
[HttpPost]
public ActionResult login(string username,string password)
{
CPanel.Models.CPanelEntities1 db = new Models.CPanelEntities1();
try
{
var user = db.USP_Authenticate(username, password).First();
return Json(new { UserId = user.UserId,Username=user.Username,IsAdmin=user.IsAdmin,Message="ok"});
}catch(Exception)
{
return Json(new { message = "error" });
}
}
}
}
第一部分(CreateUser)完美运行。但第二部分(登录)仅适用于“邮递员”chrome 应用程序。
我在“邮递员”上发布了一个请求-
localhost/dashboard/login?username=php&password=php
我看到了一个 json:
{ “用户 ID”:29, "用户名": "php", “IsAdmin”:假, “消息”:“好的” }
在 localhost 和 wwwroot (iis) 中没有机会,我面临这个错误:
“/”应用程序中的服务器错误。
找不到资源。
描述:HTTP 404。您正在寻找的资源(或其之一 依赖项)可能已被删除,名称已更改,或者是 暂时不可用。请查看以下 URL 并制作 确保拼写正确。
请求的 URL:/dashboard/login
版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.6.1586.0
【问题讨论】:
-
您能否澄清一下 “在 localhost 和 wwwroot (iis) 中没有机会”是什么意思??您是否尝试从网络浏览器访问该 url,但没有成功?
-
好吧,他找不到您指定的 URL。您确定要在仪表板前添加一个斜线吗?你是从根文件夹开始的吗?
-
我认为 url 没有任何问题,因为正如我所说,我在“Postman”中传递了 url,并得到了我想要的 json。
-
@botond.botos 是的,我在网络浏览器中输入了网址,但发生了错误。相同的网址在“邮递员”中有效。
-
@PedramHassas,当您将 URL 输入到 Web 浏览器时,它会发出 GET 请求,但您的控制器需要 POST。
标签: c# json asp.net-mvc rest