创建springboot
这块就不多说了,用了简单的数据模拟了下
@CrossOrigin
@ResponseBody
@RequestMapping(value = "/test")
public JSONObject test1(){
JSONArray jsonArray = new JSONArray();
List<Integer> list = new ArrayList<>();
for(int i = 0 ; i <= 20 ; i++){
Random random = new Random();
list.add(random.nextInt(200-0)+0);
}
JSONObject jsonObject = new JSONObject();
jsonObject.put("cycislj",list);
return jsonObject;
}
VUE
主要是vue的部分今天被跨域搞死一直不能弄,最后选择用昨天配好的ngnix,文章最后会去介绍
vue2自带解决跨域的方法可能是我菜吧一直也不行,最后整合了下也还可以用
先是安装axios
npm install axios –save
在main.js里面导入
import axios from ‘axios’
Vue.prototype.axios = axios //好像是因为axios不支持Vue.use 所以注册为全局来用
配置proxyTable
conf->index.js->dev->proxyTable
配置了如下
proxyTable: {
'/': {
target: 'http://localhost:8088/api/',//这个是我ngnix访问的链接,具体也可以替换成自己的
changeOrigin: true,
pathRewrite: {
'^/': ''//这个我的理解就是可以把/替换成http://localhost:8088/api/ 之后我访问的时候是直接/test即可了 为什么多加这个就是在同一个项目下各个接口访问起来方便点
}
},
最后是访问了
this.axios({
method: 'get',
url:'/test'
})
.then((response)=>{
let a = response.data.cycislj;
for(let i = 0;i<a.length;i++){
console.log(a[i]);
}
})
.catch((error)=>{
console.log(error)
})
Ngnix配置
nginx配置就比较简单了 我现在用的是简单的层次,只是做个转发其他我就不说了
复制一段网上做的笔记 具体是哪里复制了我也忘记了 侵删
########### 每个指令必须有分号结束。#################
#user administrator administrators; #配置用户或者组,默认为nobody nobody。
#worker_processes 2; #允许生成的进程数,默认为1
#pid /nginx/pid/nginx.pid; #指定nginx进程运行文件存放地址
error_log log/error.log debug; #制定日志路径,级别。这个设置可以放入全局块,http块,server块,级别以此为:debug|info|notice|warn|error|crit|alert|emerg
events {
accept_mutex on; #设置网路连接序列化,防止惊群现象发生,默认为on
multi_accept on; #设置一个进程是否同时接受多个网络连接,默认为off
#use epoll; #事件驱动模型,select|poll|kqueue|epoll|resig|/dev/poll|eventport
worker_connections 1024; #最大连接数,默认为512
}
http {
include mime.types; #文件扩展名与文件类型映射表
default_type application/octet-stream; #默认文件类型,默认为text/plain
#access_log off; #取消服务日志
log_format myFormat ‘$remote_addr–$remote_user [$time_local] $request $status $body_bytes_sent $http_referer $http_user_agent $http_x_forwarded_for’; #自定义格式
access_log log/access.log myFormat; #combined为日志格式的默认值
sendfile on; #允许sendfile方式传输文件,默认为off,可以在http块,server块,location块。
sendfile_max_chunk 100k; #每个进程每次调用传输数量不能大于设定的值,默认为0,即不设上限。
keepalive_timeout 65; #连接超时时间,默认为75s,可以在http,server,location块。
upstream mysvr {
server 127.0.0.1:7878;
server 192.168.10.121:3333 backup; #热备
}
error_page 404 https://www.baidu.com; #错误页
server {
keepalive_requests 120; #单连接请求上限次数。
listen 4545; #监听端口
server_name 127.0.0.1; #监听地址
location ~*^.+$ { #请求的url过滤,正则匹配,~为区分大小写,~*为不区分大小写。
#root path; #根目录
#index vv.txt; #设置默认页
proxy_pass http://mysvr; #请求转向mysvr 定义的服务器列表
deny 127.0.0.1; #拒绝的ip
allow 172.18.5.54; #允许的ip
}
}
}
主要配置就是
conf目录下的ngnix.conf
#添加拦截路径和代理地址
listen 8088;
server {
listen 8088;
server_name localhost;
location /api/ {
proxy_pass http://localhost:8282/; #访问到的我springboot
}
差不多就这些了
这里注释下一些东西:
想改server_name 但是一直没有成功一直都是localhost本地
也试过对应hosts文件了 但也是没有什么用 今天就不弄了 弄成功了再填坑 大哥们有知道 谢谢大哥们能够评论下方法
看网上的hosts文件目录和我都不太一样 不过搜到的只有 C:\Windows\WinSxS\amd64_microsoft-windows-w..ucture-other-minwin_31bf3856ad364e35_10.0.16299.15_none_582bc968d636655c 这个目录下的 还有一堆权限问题 具体思路就是把他的父文件夹改了下权限 然后弄下就好了