我前端项目传到jenkins页面访问,请求后端接口不正确

我前端项目传到jenkins页面访问,请求后端接口不正确

http://img1.sycdn.imooc.com//climg/5f0d14be09c5e19414320082.jpg

http://img1.sycdn.imooc.com//climg/5f0d14be0986982d04100215.jpg

http://img1.sycdn.imooc.com//climg/5f0d14be09c2b01813910165.jpg

http://img1.sycdn.imooc.com//climg/5f0d14be091de6ec03120029.jpg

老师, 这里抽个时间帮我看下,我的意识是觉得,这里设置应该是没问题了。

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

3回答
慕斯9257281 2020-12-18 15:13:12

请问解决问题了吗,我的项目在本地也是前后端运行正常,但是通过jenkins发布之后就存在跨域问题。其中:

  1. 查看后台服务正常运行在12005端口上

    http://img1.sycdn.imooc.com//climg/5fdc55f20917656114600116.jpg

  2. 内部端口和暴露端口映射正确

    http://img1.sycdn.imooc.com//climg/5fdc561f09507a0825200174.jpg

  3. web访问显示请求后端接口存在跨域错误

    http://img1.sycdn.imooc.com//climg/5fdc566e09f9c19622040320.jpg

Brian 2020-07-14 10:55:37

把项目的代码github贴出来~

  • 提问者 丛从绿草 #1
    后端的gitlab: https://gitlab.com/ab135790/bg-web-api# 前端的gitlab: https://gitlab.com/ab135790/big-web/-/tree/eleven
    2020-07-15 10:51:11
  • Brian 回复 提问者 丛从绿草 #2
    你的项目不是开源的,我看不到~
    2020-07-16 11:01:43
  • 提问者 丛从绿草 #3
    前端: https://github.com/ab135790/big-web-JavaScript/tree/eleven
    2020-07-16 12:25:46
Brian 2020-07-14 10:55:21

404错误,找原因从以下几个方向来找。

  1. 使用api测试工具,来直接测试你的接口,看能不能正常返回。

  2. 如果不能正常返回,检查一下router中的,method设置。是不是GET、POST没有写对。检查路径,打断点进行测试。

  3. 如果能正常返回,打开chrome,network选项卡,对比一下你们两个的请求头


我大概率觉得是你的12005这个端口的映射有问题:

  1. 服务没有启动在12005

  2. 服务没有正确的从(服务端口) -> 映射到12005宿主机

  • 提问者 丛从绿草 #1
    我用postman 发http://106.55.147.49:12005/public/list?catalog=&isTop=0&page=0&limit=20&sort=&tag=&status= 能正常请求到数据,我本地学习用的是服务器上的数据库,能正常获取到。
    2020-07-15 10:54:41
  • 提问者 丛从绿草 #2
    #!/bin/bash CONTAINER=${container_name} PORT=${port} # echo $CONTAINER # echo $PORT # 完成了镜像的构建 docker build --no-cache -t ${image_name}:${tag} . # echo 'Hello world!' RUNNING=${docker inspect --format="{{ .State.Running}}" $CONTAINER 2 > /dev/null} # 条件判断 if [ ! -n $RUNNING ]; then echo "$CONTAINER does not exit" return 1 fi if [ "$RUNNING" == "false" ]; then echo "$CONTAINER is not running." return 2 else echo "$CONTAINER is running" # delete same name container matchingStarted=$(docker ps --filter="name=$CONTAINER" -q | xargs) if [ -n $matchingStarted ]; then docker stop $matchingStarted fi matching=$(docker ps -a --filter="name=$CONTAINER" -q | xargs) if [ -n $matching ]; then docker rm $matching fi fi echo "RUNNING is ${RUNNING}" # 跑起来我们的服务 docker run -itd --name $CONTAINER -p $PORT:80 ${image_name}:${tag} 跟这个shell脚本有关嘛 ?!
    2020-07-15 11:06:36
  • Brian 回复 提问者 丛从绿草 #3
    我看你是请求到12005内部端口了,但是docker run -itd --name $CONTAINER -p $PORT:80 ${image_name}:${tag} 这个服务运行的内部端口应该是80啊~ 从这个角度来检查
    2020-07-16 11:02:26
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师