我正在创建一个登录服务来检查用户是否存在于SQL Server管理工作室中?
桌子:
学生
- 斯图迪德(PK(
- 用户名
- 密码
我只插入了一个文件
12(学生( ABC(用户名( ABC754(密码(
我创建服务:
public class studentsController : Controller
{
[HttpPost]
public JsonResult loginapi(string username, string password)
{
using (studangEntities stud = new studangEntities())
{
if (username == "" || username == null)
{
var data = new
{
message = "Enter Email",
};
return Json(data, JsonRequestBehavior.AllowGet);
}
else if (password == "" || password == null)
{
var data = new
{
message = "Enter Password",
};
return Json(data, JsonRequestBehavior.AllowGet);
}
else
{
var userdata = stud.students.SqlQuery("select * from student where username='" + username + "'and password='" + password + "'").FirstOrDefault();
if (userdata != null)
{
var data = new
{
message = "Success",
data = new { userdata }
};
return Json(data, JsonRequestBehavior.AllowGet);
}
else
{
var data = new
{
message = "Email and password incorrect ",
};
return Json(data, JsonRequestBehavior.AllowGet);
}
}
}
}
}
模型1.上下文.cs
namespace ApiDemos
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class studangEntities : DbContext
{
public studangEntities()
: base("name=studangEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public virtual DbSet<student> students { get; set; }
}
}
当我检查服务时:
http://localhost:34307/api/students
<student>
<password>abc754</password>
<studid>12</studid>
<username>abc</username>
</student>
</ArrayOfstudent>
当我签到邮递员时:
http://localhost:34307/api/students/loginapi?username=xyz&password=xyz123
raw
{
"username":"xyz",
"password":"xyz123"
}
body
{
"studid": 1012,
"username": "xyz",
"password": "xyz123"
}
status:201 created
我的记录插入是问题所在??
我想要什么:
我想当用户输入正确的凭据时,然后
用户名: ABC
密码:ABC754 然后显示成功消息
当用户输入错误的凭据时
用户名: XYZ
密码:xyz123 然后显示"电子邮件和密码不正确",但为什么创建我的记录????
请帮忙,谢谢
您忘了在此处添加api
:
post http://localhost:34307/api/students/loginapi?username=abc&password=754
但由于这是一个帖子,最好在您的请求正文中传递username
和password
。
登录 api 端点以 HTTP POST 形式公开,从 Postman 您将请求作为 HTTP GET 发送。这就是你得到404的原因。
其他问题可能是因为您没有使用 ID 声明 HTTP GET。