kbmmw 的HTTPSmartService中的跨域访问
有同学在使用kbmmw 与extjs 结合的时候,涉及到了跨域访问,这个在
kbmmw 里面已经完全解决。
extjs 在访问跨域的时候,首先会使用OPIONS 调用,服务端要根据浏览器请求的
head 来回应客户端,如果正确,则客户端再调用GET 方式访问服务器。
像不像我们地下党接头一样,首先要对一下暗号,暗号正确,开始交出城防图,不正确,对不起,开枪!
服务器端的代码,kbmmw 已经替大家处理了,很简单,只是设置允许访问的信息。
[kbmMW_Method][kbmMW_Rest('method:get, path: "itemlist/{query}"')]function GetItemlist([kbmMW_Rest('value: "{query}"')] const aQuery:string;[kbmMW_Rest('value: "$ph", required: true')] const ph:string;[kbmMW_Rest('value: "$pm", required: true')] const pm:string;[kbmMW_Rest('value: "$xh", required: true')] const xh:string;[kbmMW_Rest('value: "$gg", required: true')] const gg:string;[kbmMW_Rest('value: "$th", required: true')] const th:string;[kbmMW_Rest('value: "$jbm", required: true')] const jbm:string;[kbmMW_Rest('value: "$gc", required: true')] const gc:string;[kbmMW_Rest('value: "$limit", required: true')] const pagesize:string;[kbmMW_Rest('value: "$page", required: true')] const pageindex:string;[kbmMW_Rest('value: "$callback", required: true')] const callback:string):string;end;implementationuses kbmMWExceptions, Unit1;{$R *.dfm}{ TdgwRestService }function TdgwRestService.GetItemlist(const aQuery, ph, pm, xh, gg, th, jbm,gc,pagesize, pageindex,callback: string): string; beginProcessCORSRequest;result := '{"result":"1","sumcount":1,"data":[{"PH":"ph001","PM":"pm001","XH":"xh001"},'+ '{"PH":"ph002","PM":"pm002","XH":"xh002"}]}';if callback<>'' thenResult:= callback + '(' + Result + ');';end;procedure TdgwRestService.kbmMWCustomHTTPSmartServiceCORS(Sender: TObject;const ARequestHelper, AResponseHelper: TkbmMWHTTPTransportStreamHelper;const AOrigin: string; var AAllowedOrigins, AAllowedMethods,AAllowedHeaders: string); beginAAllowedMethods:='GET' ;AAllowedOrigins:='http://127.0.0.1';AAllowedHeaders:= 'x-requested-with';end;
运行截图
网站的源地址是http://127.0.0.1
跨域访问的地址是http://127.0.0.1:81
下面一图顶万言。
还是很简单的。
转载于:https://www.cnblogs.com/xalion/p/7954472.html
kbmmw 的HTTPSmartService中的跨域访问相关推荐
- jsonp的原理·jsonp是不是ajax中实现跨域访问的技术
ajax请求受同源策略影响,不允许进行跨域请求,而script标签src属性中的链接却可以访问跨域的js脚本,利用这个特性,服务端不再返回JSON格式的数据, 而是返回一段调用某个函数的js代码,在s ...
- yii2 跨域请求配置_如何在SpringBoot应用中实现跨域访问资源和消息通信?
允许跨域访问 CORS ( Cross Origin Resource Sharing,跨域资源共享)机制允许Web应用服务器进行跨域访问控制,从而使跨域数据传输得以安全进行.浏览器支持在API容器中 ...
- 关于flex开发中的跨域访问问题
1,一次偶然的机会碰到这个问题了,flex有跨域访问问题,但是,imgage.soure='其它域名地址是可以的'.能显示出来,为什么? 不是说有跨越访问的问题么,其实flash说的跨域访问问题,不是 ...
- 在Firefox中通过AJAX跨域访问Web资源
一.解决在firefox中无法跨域访问的问题 AJAX从本质上讲就是命名用XMLHttpRequest组件来向服务端发送HTTP请求,请接收相应信息.至于成功接收到响应信息后的操作,就和普通的Web客 ...
- javascript中实现跨域的方式总结
js中的跨域请求应该也算是一个重点,具体什么叫跨域,在这里我就不展开了,可以查一下浏览器的同源策略和跨域的定义.原来只知道常用的jsonp和document.domain这两种方式,这几天学习了一下其 ...
- Spring Security系列教程解决Spring Security环境中的跨域问题
原创:千锋一一哥 前言 上一章节中,一一哥 给各位讲解了同源策略和跨域问题,以及跨域问题的解决方案,在本篇文章中,我会带大家进行代码实现,看看在Spring Security环境中如何解决跨域问题. ...
- 爆破专栏丨Spring系列教程解决Spring Security环境中的跨域问题
上一章节中,一一哥 给各位讲解了同源策略和跨域问题,以及跨域问题的解决方案,在本篇文章中,我会带大家进行代码实现,看看在Spring Security环境中如何解决跨域问题. 一. 启用Spring ...
- HTTP Headers 之 Origin跨域访问一定要加上这个header
1.跨域访问 概念 HTTP 协议中的 Origin Header 存在于请求中,用于指明当前请求来自于哪个站点. 字段内容 Origin 仅仅包含站点信息,不包含任何路径信息. 语法 Origin: ...
- WCF 构建REST Service 跨域访问解决方法
服务端是用vs2013里WCF做的REST风格的web service. 客户端是用jquery+ajax访问web service. 参考 http://www.topwcftutorials.ne ...
- html的页面怎样直接跨域访问,【HTML】iframe跨域访问问题
概述 本地同一浏览器访问本地HTML文件和访问服务器端HTML文件,本地Iframe没有自适应高度,而服务器端的Ifrane自适应了高度. 1.问题重现: Chrome 版本 41.0.2272.10 ...
最新文章
- Code Forces Bear and Forgotten Tree 3 639B
- 常用广告类型的包装代码示例
- matlab中,怎样把矩阵中所有的0改为2
- 不同品牌android手机ui,各大安卓手机品牌里,系统UI设计对比,谁赢了?
- 限时免费下载丨《2021 中国游戏市场挑战与机遇盘点》重磅发布!
- AOP面向切面编程相关术语介绍
- centos内核编译与其签名机制
- XOS 源码详解2: os_s_xxxx.s 汇编代码的段定义AREA,程序入口ENTRY,程序结尾END.
- vim文本编辑器的操作和命令(可作手册查询)
- android 关联dicom文件,基于Android的DICOM浏览器的开发
- Insyde uefi 隐藏设置_uefi版和装机版有什么区别详细分析
- 7 Babylonjs基础入门 动画
- 如何用Intel主板集成的RAID控制器(Intel RST)实现硬盘提速与硬盘数据恢复
- 超简单微信登录(微信SDK接入、友盟SDK接入)
- dbfs换算_dB单位含义及换算
- linux修改文件名字
- cordova跳转远程页面调用浏览器问题
- VSCode在打印输出sizeof()时的警告
- c语言 xff占几个字节,xff
- Oracle EBS R12 GL总帐模块 查询日记帐明细SQL
热门文章
- java实体类生成mysql表_自己简单写的JDBCUtils,可以根据当前数据库下面的表生成java实体类。...
- python怎么看待_如何看待将Python作为少儿编程的基础语言?
- alexnet的loss在一个epoch内没有稳定下降_深度学习中的双下降现象
- 看看我能帮上大家的什么忙? 文平
- 百度MapAPI之地理编码
- 【图文】远程桌面链接:这可能是由于credssp加密oracle修正
- 修改他人代码:怎么才能减少发布Bug概率?
- 柯洁放言力拼AlphaGo:我抱有必死的信念!(全部细节都在这里)
- JS键盘事件对象之keyCode、charCode、which属性对比
- Redis Cluster 的安装和配置(1)