ajax请求跨域
解决方式 1:

解决方式 2:
服务端:
package ceshi_utils; import java.util.*; import com.xwhb.utils.encrypt.CipherUtil;
import com.xwhb.utils.encrypt.MD5Util; import io.vertx.core.AbstractVerticle;
import io.vertx.core.eventbus.DeliveryOptions;
import io.vertx.core.http.HttpMethod;
import io.vertx.core.http.HttpServer; public class CSHttpVerticle extends AbstractVerticle { @Override
public void start() throws Exception {
super.start(); HttpServer server = vertx.createHttpServer();
server.requestHandler(req -> {
if (req.method() == HttpMethod.GET) { if (req.path().equals("/xwh-order")) {
req.response().setChunked(true);
req.bodyHandler(buffer -> { String way = req.getParam("way"); System.out.println("way :"+way); if (null != way){
way = "WX";
}else {
way = "ZFB";
} String sr=HttpRequest.sendPost("http://47.96.12.223/xwhbank", generateParams_order(way));
System.out.println(sr); req.response().putHeader("Access-Control-Allow-Origin","*");//allow all ip
req.response().putHeader("Access-Control-Allow-Methods","Get,Post,Put,OPTIONS");
req.response().putHeader("Access-Control-Allow-Headers","X-Requested-With,Content-Type,Accept"); req.response().putHeader("Content-Type", "text/html;charset=utf-8");
req.response().setStatusCode(200).write(sr).end();
}); }else if(req.path().equals("/xwh-withdraw")){
req.response().setChunked(true);
req.bodyHandler(buffer -> { String sr=HttpRequest.sendPost("http://47.96.12.223/xwhbank", generateParams_withdraw());
System.out.println(sr); req.response().putHeader("Access-Control-Allow-Origin","*");//allow all ip
req.response().putHeader("Access-Control-Allow-Methods","Get,Post,Put,OPTIONS");
req.response().putHeader("Access-Control-Allow-Headers","X-Requested-With,Content-Type,Accept"); req.response().putHeader("Content-Type", "text/html;charset=utf-8");
req.response().setStatusCode(200).write(sr).end(); });
}else {
req.response().setStatusCode(500).end();
}
}
});
server.listen(8123);
} private String generateParams_withdraw() {
...
} private String generateParams_order(String way){
...
} }
浏览器端
<!DOCTYPE html>
<html>
<head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<meta http-equiv="Access-Control-Allow-Origin" content="*"> 这行测试时不要也可以
<title>登录</title>
<script type='text/javascript' src='http://cdn.staticfile.org/jquery/2.1.1/jquery.min.js'></script>
<script type="text/javascript" src="http://cdn.staticfile.org/jquery.qrcode/1.0/jquery.qrcode.min.js"></script> </head>
<body>
<div id="qrcode"></div>
<script type="text/javascript">
$.ajax({
type: "GET",
url: "http://47.96.146.122:8123/xwh-order?way=WX",
dataType: "text",
success: function (data) {
$('#qrcode').qrcode(data);
}
});
</script>
</body>
</html>
ajax请求跨域的更多相关文章
- day78_淘淘商城项目_11_单点登录系统实现 + 用户名回显 + ajax请求跨域问题详解_匠心笔记
课程计划 1.SSO注册功能实现 2.SSO登录功能实现 3.通过token获得用户信息 4.ajax跨域请求解决方案--jsonp 1.服务接口实现 SSO系统就是解决分布式环境下登录问题的,本 ...
- 解决ajax请求跨域
跨域大部分需要通过后台解决,引起跨域的原因: 3个问题同时满足 才可能产生跨域问题,即跨域(协议,主机名,端口号中有一个不同就产生跨域) 下面是解决方法 方法一 // ajax请求跨域 /* *解决a ...
- 解决Ajax请求跨域问题
from:https://blog.csdn.net/wang379275614/article/details/53333775 上篇文章提到,由于浏览器的同源策略,使得,AJAX请求只能发给同源的 ...
- 处理Ajax请求跨域问题
ajax跨域的原理 ajax出现请求跨域错误问题,主要原因就是因为浏览器的“同源策略”. CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resourc ...
- 关于ajax请求跨域问题
jQuery中的异步请求跨域的方法: xhrFields: {withCredentials: true} 当设置为 true时,表示允许跨域: false时,表示禁止跨域
- Ajax请求跨域问题 -- 转载
几乎每种浏览器都存在默认的安全机制,都有同源策略,因为浏览器恶意的把每个外部请求的都当做是黑客攻击,相当于是对自身的保护,所以浏览器在运行脚本时会判断脚本与请求的页面是否是同一来源,这个同一来源,包括 ...
- ajax请求跨域问题
ajax跨域,这个是面试的时候常被问到,也是在做项目的时候会遇到的问题,在之前的项目中就有遇到过,这里根据经验写了三种分享下 1.使用中间层过渡的方式 简单来说就是"后台代理",把 ...
- web api 解决Ajax请求跨域问题
前端ajax请求接口时,经常出现跨域问题,当然了解决方法有很多种,比如: http://www.jb51.net/article/68424.htm 我本人恰好前后端都会一点,所以直接在接口端处理. ...
- WebApp开发:ajax请求跨域问题的解决
服务端:PHP 客户端:Andorid, HTML5, jQuery, ajax 现象:本想通过jQuery的ajax功能从服务器取回数据存到手机的缓存里,结果总是错误,后来想到可能是跨域问题,所以查 ...
- nginx配置 解决ajax请求跨域问题
文章来源:http://to-u.xyz/2016/06/30/nginx-cors/ 背景描述 最近在研究RESTful API接口设计,使用的是Nginx,要实现本地http://127.0.0. ...
随机推荐
- python 网页爬虫,带登陆信息
注意点: 1. 用Fiddler抓取登陆后的headers,cookies; 2. 每抓取一次网页暂停一点时间防止反爬虫; 3. 抓取前,需要关闭Fiddler以防止端口占用. 还需解决的问题: 爬取 ...
- 企业微信二次开发之-如何获取secret序列号
第一步:登录JEEWX后台,配置微信企业号账号信息(企业号.企业号应用) [1].配置企业微信信息 参数对应位置参考如下: [2].配置应用信息 必须四字段: 第二步: 登录企业微信后台,配置企业号应 ...
- Spring cloud info信息显示
父工程添加配置如下 <build> <finalName>microservicecloud</finalName> <resources> <r ...
- ABAP-定时-异步
*&---------------------------------------------------------------------* *& Report ZRICO_TES ...
- mui longtap 事件无效
1.mui 的部分事件默认是关闭的 需要在init中单独配置事件开关 mui.init({ gestureConfig: { longtap: true, //默认为false } })
- ReactiveX 学习笔记(13)基础类型
Key Types and Life Management 本文主题是 Rx 中的基础类型 Subject 类及其生命周期的管理. 公共代码 RxNET private static void Wri ...
- [C语言]数据类型与计算
------------------------------------------------------------------------------------------------- 实际 ...
- idea2017授权
http://blog.csdn.net/qq_27686779/article/details/78870816 文章中注册码: BIG3CLIK6F-eyJsaWNlbnNlSWQiOiJCSUc ...
- Structs复习 Path问题
Path问题相对复杂 主要是路劲问题 但结论很简单 就是统一使用绝对路径 jar包 web.xml <?xml version="1.0" encoding="UT ...
- Android高级控件(上)
Toast信息提示框 bt1.setOnClickListener(new OnClickListener() { public void onClick(View v) { Toast.makeTe ...