jsonp的本质是通过script标签的src属性请求到服务端,拿到到服务端返回的数据 ,因为src是可以跨域的。前端通过src发送跨域请求时在请求的url带上回调函数,服务端收到请求时,接受前端传过来的回掉函数名称,将其拼接成js函数调用返回到前端即可完成跨域请求。

前端实现代码:

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head> <body> </body> </html>
<script>
function successFun(data) {
console.log(data);
}
function show(data) {
console.log(data);
}
</script>
<!-- 把请求的成功的回掉函数名称通过url传参传到服务端,服务端返回时需要拼接一个函数调用返回到前端 -->
<script src="https://localhost:44381/Home/Action?cb=show"></script>
<script src="https://localhost:44381/Home/GetScript?cb=successFun"></script>

.Net服务端代码:

using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;
using Newtonsoft.Json; namespace Jsonp.Controllers
{
public class HomeController : Controller
{
public IActionResult Action()
{
var cb = Request.Query["cb"];
return Content(cb + "(123)");
}
public IActionResult GetScript()
{
var cb = Request.Query["cb"];
var data = new List<int>()
{
,,,,,,,,,,,,,
};
var result = $"{cb}({JsonConvert.SerializeObject(data)})";
return Content(result);
}
}
}

最新文章

  1. Redis常用命令入门4:集合类型
  2. __block修饰变量以及代码块的用法
  3. MySQL之权限管理
  4. javascript知识点总结----Function定义
  5. 如何在UIimageview里显示一张图片里的某一部分
  6. Usermod 命令详解
  7. C#中判断一个网址是否可以打开
  8. 海量jQuery插件
  9. Kernel Regression from Nando&#39;s Deep Learning lecture 5
  10. Spring-----5、Spring容器中的bean
  11. MYSQL select ....outfile.....from.....
  12. HTML5线性图表 图表数据区域可着色
  13. PAT (Advanced Level) 1009. Product of Polynomials (25)
  14. HTML5之2D物理引擎 Box2D for javascript Games 系列 第三部分之创建图腾破坏者的关卡
  15. 201521123081《java程序设计》 第11周学习总结
  16. centos7下搭建 MongoDB -01
  17. 【java】i++与++i、i--运算
  18. JMeter中Ultimate Thread Group插件使用
  19. 原生JavaScript运动功能系列(三):多物体多值运动
  20. OpenStack-Neutron-VPNaaS-配置

热门文章

  1. 互联网渗透测试之Wireshark的高级应用
  2. 002-Zabbix 前端配置
  3. Docker镜像服务(二)
  4. Linux终端执行shell脚本,提示权限不够
  5. 201871010109-胡欢欢《面向对象程序设计(java)》第十一周学习总结
  6. CF1045B Space Isaac
  7. O2O场景下的推荐排序模型:
  8. BZOJ练习记
  9. Salesforce 开发整理(十)项目部署总结
  10. STM32Cube在Main里判断USB是否已连接到电脑