API

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using System.Web.Http.Cors;
using yue5API.Models;

namespace yue5API.Controllers
{
[EnableCors("*", "*", "*")]
public class BookApiController : ApiController
{
// GET: api/BookApi
yue5DBEntities db = new yue5DBEntities();
public IEnumerable<stu> Get()
{
return db.stus.ToList();
}

// GET: api/BookApi/5
public stu Get(int id)
{
var tt = db.stus.Where(s => s.ID == id).FirstOrDefault();

return tt;
}

// POST: api/BookApi
public void Post([FromBody]stu value)
{
db.stus.Add(value);
db.SaveChanges();
}

// PUT: api/BookApi/5
public void Put(int id, [FromBody]stu value)
{
var tt = db.stus.Where(s => s.ID == id).FirstOrDefault();
if (tt != null)
tt.ID = value.ID;
tt.Name = value.Name;
tt.Num = value.Num;
tt.Price = value.Price;
db.SaveChanges();
}

// DELETE: api/BookApi/5
public HttpResponseMessage Delete(int id)
{
var tt = db.stus.Where(s => s.ID == id).FirstOrDefault();
if (tt != null)
{
db.stus.Remove(tt);
db.SaveChanges();
return new HttpResponseMessage() { StatusCode = HttpStatusCode.OK };
}
else
{
return new HttpResponseMessage() { StatusCode = HttpStatusCode.NoContent };
}
}
}
}

MVC

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Web;
using System.Web.Mvc;
using yue5MVC.Models;
using Newtonsoft.Json;
namespace yue5MVC.Controllers
{
public class showController : Controller
{

//显示
// GET: show
public ActionResult Index()
{
Uri uri = new Uri("http://localhost:4970");
HttpClient client = new HttpClient();
client.BaseAddress = uri;
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage message=client.GetAsync("api/BookApi").Result;
List<All> tt = new List<All>();
if (message.IsSuccessStatusCode)
{
string pp = message.Content.ReadAsStringAsync().Result;
tt = JsonConvert.DeserializeObject<List<All>>(pp);
}
client.Dispose();

return View(tt);
}
public ActionResult add()
{
return View();
}

//删除
public ActionResult shan(int id)
{
Uri uri = new Uri("http://localhost:4970");
HttpClient client = new HttpClient();
client.BaseAddress = uri;
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage message = client.DeleteAsync("api/BookApi/"+id).Result;

if (message.IsSuccessStatusCode)
{
return Content("<script>alert('删除成功');location.href='/show/Index'</script>");
}
else
{
return Content("<script>alert('删除失败')</script>");
}
}

//修改
public ActionResult xiu(int id)
{
ViewBag.id = id;

return View();
}

}
}

前台修改

@{
Layout = null;
}

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>xiu</title>
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
</head>
<body>
<div>
<p>名称:<input id="txtname" type="text" name="Name" /></p>
<p>数量:<input id="txtnum" type="text" name="Num" /></p>
<p>价格:<input id="txtprice" type="text" name="Price" /></p>
<input id="Submit1" type="submit" value="sub修改" />
<input id="Button1" type="button" value="修改" onclick="xiu()" />
<script>
$(function () {
show();
})
function show() {
var id = '@ViewBag.id';
$.ajax({
url: "http://localhost:4970/api/Bookapi/"+id,
type: "Get",
success: function (data) {
$("#txtname").val(data.Name);
$("#txtnum").val(data.Num);
$("#txtprice").val(data.Price);
}

})
}
function xiu() {
var id = '@ViewBag.id';
$.ajax({
url: "http://localhost:4970/api/Bookapi/"+id,
type: "Put",
data:{ID:id,Name:$("#txtname").val(),Num:$("#txtnum").val(),Price:$("#txtprice").val()},
success: function (data) {
alert("修改成功");
location.href = '/show/Index';
}

})

}
</script>
</div>
</body>
</html>

添加

@{
Layout = null;
}

<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>add</title>
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
</head>
<body>
<div>
<p>名称:<input id="txtname" type="text" /></p>
<p>数量:<input id="txtnum" type="text" /></p>
<p>价格:<input id="txtprice" type="text" /></p>
<input id="Button1" type="button" value="添加" onclick="tian()" />
<script>
function tian() {
$.ajax({
url: "http://localhost:4970/api/Bookapi",
type: "Post",
dataType: "json",
data: { Name: $("#txtname").val(), Num: $("#txtnum").val(), Price: $("#txtprice").val() },
success: function (data) {
alert("添加成功");
location.href = '/show/Index';
}

})
}
</script>
</div>
</body>
</html>

显示

@{
Layout = null;
}
@model List<yue5MVC.Models.All>
<!DOCTYPE html>

<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
</head>
<body>
<div>
<table>
<tr>
<td>名称</td>
<td>数量</td>
<td>价格</td>
<td>操作</td>
</tr>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>@item.Name</td>
<td>@item.Num</td>
<td>@item.Price</td>
<td><a href="#" onclick="shan(@item.ID)">删除</a>
<a href="/show/xiu/@item.ID">修改</a></td>
</tr>

}
</tbody>
</table>
<table id="show"></table>
<script>
$(function () {
show();
})
function show() {

$.ajax({
url: "http://localhost:4970/api/Bookapi/"+id,
type: "Get",
success: function (data) {

var str = "";

str += "<tr><td>" + data.Name+ "</td></tr>";
str += "<tr><td>" + data.Num + "</td></tr>";
str += "<tr><td>" + data.Price + "</td></tr>";

$("#show").val();
}

})
function shan(id){

location.href='/show/shan?id='+id;
}
</script>
</div>
</body>
</html>

MVC跨域API的更多相关文章

  1. 跨域API

    跨域API 简单跨域请求 只需要简单的设置允许跨域就可以了 def set_default_headers(self): self.set_header('Access-Control-Allow-O ...

  2. Angular2中对ASP.NET MVC跨域访问

    应用场景 项目开发决定使用angular2进行前后端分离开发,由我负责后端服务的开发,起初选择的是web api进行开发.对跨域访问通过API中间件+过滤器对跨域访问进行支持.开发一段后,通知需要移植 ...

  3. MVC跨域CORS扩展

    一般的基于浏览器跨域的主要解决方法有这么几种:1.JSONP       2.IFrame方式    3.通过flash实现  4.CORS跨域资源共享  ,这里我们主要关注的是在MVC里面的CORS ...

  4. 关于Spring MVC跨域

    1.Sping MVC 3.X跨域 关于跨域问题,主要用的比较多的是cros跨域. 详细介绍请看https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Ac ...

  5. spring mvc跨域设置(全局)

    //--------------第一步//spring 5版本全局配置方式 @Configuration @EnableWebMvc public class SpringMvcBeans imple ...

  6. spring mvc 跨域问题。。。解决

    官方推荐方式: http://spring.io/blog/2015/06/08/cors-support-in-spring-framework 方式1: $.ajax({ //前台:常规写法.注意 ...

  7. spring mvc 跨域请求处理——spring 4.2 以上

    Controller method CORS configuration You can add to your @RequestMapping annotated handler method a  ...

  8. Asp.Net 跨域,Asp.Net MVC 跨域,Session共享,CORS,Asp.Net CORS,Asp.Net MVC CORS,MVC CORS

    比如 http://www.test.com 和 http://m.test.com 一.简单粗暴的方法 Web.Config <system.web> <!--其他配置 省略……- ...

  9. 解决.Net Mvc跨域请求问题

    针对ASP.NET MVC和ASP.NET Web API两种项目类型 1.针对ASP.NET MVC,只需要在web.config中添加如下的内容即可 <system.webServer> ...

随机推荐

  1. puppeteer(一)环境搭建——新Web自动化工具(同selenium)

    一.简介 https://github.com/GoogleChrome/puppeteer Puppeteer是一个Node库,它提供了一个高级API来控制DevTools协议上的 Chrome或C ...

  2. 精练代码:一次Java函数式编程的重构之旅

    摘要:通过一次并发处理数据集的Java代码重构之旅,展示函数式编程如何使得代码更加精练. 难度:中级 基础知识 在开始之前,了解"高阶函数"和"泛型"这两个概念 ...

  3. vue 在浏览器控制台怎么调试 谷歌插件vue Devtools

    vue 在浏览器控制台怎么调试 谷歌插件vue Devtools 问题: vuejs里面的变量,怎么用浏览器的console查看? 例如,想在chrome里用console.log查看变量$data, ...

  4. 扩容 swap 分区

    扩容 swap 分区 题:添加一个 swap 分区在您的系统中添加一个大小为 512 MiB 的 swap 分区.当您的系统启动时,swap 分区应 该可以自动挂载.不要移除或者修改其他已经存在于您的 ...

  5. bzoj 1835 base 基站选址 - 动态规划 - 线段树

    题目传送门 需要高级权限的传送门 题目大意 有$n$个村庄坐落在一条直线上,第$i \ \ \ (i>1)$个村庄距离第$1$个村庄的距离为$D_i$.需要在这些村庄中建立不超过$K$个通讯基站 ...

  6. 【BZOJ4031】小Z的房间

    Description 你突然有了一个大房子,房子里面有一些房间.事实上,你的房子可以看做是一个包含n*m个格子的格状矩形,每个格子是一个房间或者是一个柱子.在一开始的时候,相邻的格子之间都有墙隔着. ...

  7. [BZOJ2298]problem a

    Description 一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低.”问最少有几个人没有说真话(可能有相同的分数) Input 第一行一个整数n,接下来n行每行两个 ...

  8. Machine Learning--week3 逻辑回归函数(分类)、决策边界、逻辑回归代价函数、多分类与(逻辑回归和线性回归的)正则化

    Classification It's not a good idea to use linear regression for classification problem. We can use ...

  9. JavaScript-DOM(2)

    内部样式及外部样式的获取及修改 内部样式或外部样式不能通过style属性获取样式 IE浏览器:var width = div1.currentStyle.width; 非IE:window.getCo ...

  10. angular --- s3core移动端项目

    因为记性不好的原因做个草稿笔记 app.js中 var myApp = angular.module('myApp',['ui.router','oc.lazyLoad','ngAnimate','数 ...