实现小程序连接服务器(Java后台)发送请求,并返回响应

news/2024/7/20 3:42:55 标签: 小程序

实现小程序连接服务器发送请求,并返回响应

  • 一、思路
  • 二、服务器端准备(Java Servlet)
  • 三、小程序准备
  • 四、如果是访问云服务器应该怎么办。
    • 思路:
    • 怎么样把javaweb项目部署到宝塔面板中?
      • 1.首先将idea建立的网站导出.war文件
        • ①在Project setting中进行如下操作
        • ②记住导出文件的路径(等下在这个路径下找导出的文件)
        • ③然后Buid一下war文件(war文件就生成了)
      • 2.宝塔面板的准备
        • ①.首先在软件商店里搜索Java项目管理器,点击安装。
        • ②.创建项目
        • ③.映射网站
        • ④.点击映射生成的网站,进入网站根目录,删除默认生成的文件,然后上传javaWeb生成的.war文件,然后解压。
        • ⑤、重新启动Tomcat服务

一、思路

1.首先分析整个过程,整个过程中就两个对象客户端和服务端,客户端向服务端发送请求,然后服务端再返回响应。
2.实验环境:
(1)服务端:电脑(本地服务器)、idea开发工具
(2)客户端:微信小程序开发工具开发的小程序

通信流程:
在这里插入图片描述

二、服务器端准备(Java Servlet)

1.用idea创建一个JavaWeb项目。(我这里是小程序通信测试)
如何建立看这里:
用Idea建立第一个网站
2.建好了项目后,在src文件夹下创建如下的包名

在这里插入图片描述
3.然后右击包文件夹,选择建立一个servlet类在这里插入图片描述
在这里插入图片描述
4.JavaServlet文件

 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        super.doGet(request, response);
        response.setContentType("text/html;charset=utf-8");
        /* 设置响应头允许ajax跨域访问 */
        response.setHeader("Access-Control-Allow-Origin", "*");
        /* 星号表示所有的异域请求都可以接受, */
        response.setHeader("Access-Control-Allow-Methods", "GET,POST");

        //获取微信小程序get的参数值并打印
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        System.out.println("username="+username+" ,password="+password);

        //返回值给微信小程序
        Writer out = response.getWriter();
        out.write("进入后台了");
        out.flush();
    }

5.注意要在web.xml文件里面注册servlet,如
在这里插入图片描述
6.最后用Tomcat发布网站,服务器端的准备就做好了。

三、小程序准备

1.在主界面(index.xml)添加一个button用来点击发送请求.
在这里插入图片描述
2.在index.js文件,添加按钮的点击事件的逻辑

bindtest: function(){
    wx.request({
      url: 'http://192.168.10.46:8080/Demo/one',  //要访问的地址(win+R,然后输入ipconfig可查看自己电脑的Ip地址)
      data:{
        username:'001',
        password:'abc'
      },
      method:'GET',
      header: {
        'content-type': 'application/json'    },
      success:function(res){
        console.log(res.data);      },
      fail:function(res){
        console.log(".....fail.....");
      }
    })
  },

3.开始调试前先设置项目设置(否则无法访问本地服务器)
在这里插入图片描述

Ok现在已经准备就绪了,运行小程序,然后真机调试,点击按钮发送请求。
测试如下:
服务端
在这里插入图片描述
客户端
在这里插入图片描述

四、如果是访问云服务器应该怎么办。

思路:

首先我们来分析一下,云服务器其实就是一台电脑,那么要访问云
服务器的javaweb项目,我们就需要将javaweb项目部署到云服务器
上。在这里我们用宝塔面板来部署(一个宝塔面板绑定了一个云服
务器)。JavaWeb项目在本地服务器是由Tomcat管理的,那么我们
就给宝塔面板部署相同的环境。然后我们再把本地的JavaWeb项目
部署到宝塔面板中就行啦。最后小程序只要改一下访问的服务器地
址即可。

怎么样把javaweb项目部署到宝塔面板中?

1.首先将idea建立的网站导出.war文件

①在Project setting中进行如下操作

在这里插入图片描述

②记住导出文件的路径(等下在这个路径下找导出的文件)

在这里插入图片描述

③然后Buid一下war文件(war文件就生成了)

在这里插入图片描述

2.宝塔面板的准备

①.首先在软件商店里搜索Java项目管理器,点击安装。

(注意:Tomcat8.0对应Jdk1.8)

②.创建项目

在这里插入图片描述

③.映射网站

在这里插入图片描述

④.点击映射生成的网站,进入网站根目录,删除默认生成的文件,然后上传javaWeb生成的.war文件,然后解压。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

⑤、重新启动Tomcat服务

在这里插入图片描述

Ok现在部署完毕,开始测试。
小程序更改一下访问地址
在这里插入图片描述
结果
在这里插入图片描述

参考博客:
微信小程序和Java后台通信


http://www.niftyadmin.cn/n/732105.html

相关文章

nginx 将您重定向的次数过多。_涨姿势Nginx常见配置总结

团队介绍 我们是光大科技有限公司智能云计算部运维服务团队系统运维项目组,致力保障和服务集团各业务系统操作系统、中间件和数据库的稳定、安全、高效的运转,降低集团各业务系统以及业务运行的风险,为集体信息化建设保驾护航。我们的团队拥有经验丰富的操作系统、中间件和数…

六、C++基础系列笔记——继承和多态(一)

继承和多态1.继承的本质和原理2.派生类的构造过程(创建/诞生的过程)3.重载、覆盖、隐藏4.静态绑定和动态绑定5.虚函数、vfptr和vftable总结一:总结二:总结三:总结四:6.虚析构函数1.继承的本质和原理 总结&…

java程序设计精编教程第3版电子版课后答案_Java程序设计 精编教程 第版 习题解答...

习题解答习题一(第1章)1.James Gosling2.需3个步骤:1)用文本编辑器编写源文件。2)使用javac编译源文件,得到字节码文件。3)使用解释器运行程序。3.set classpathD:\jdk\jre\lib\rt.jar;.;4.B5.Java源文件的扩展名是.java&#xff…

curl shell 失败_linux中shell curl命令获取http状态码

linux中shell curl命令获取http状态码通过curl的-w参数我们可以自定义curl的输出,%{http_code}代表http状态码代码如下复制代码# curl -I -m 10 -o /dev/null -s -w %{http_code} www.111cn.net上面的输出是不含换行的,如果需要换行的话,加上…

powerdesign如何导出数据库到mysql数据库

一、powerdesign如何导出数据库到mysql数据库 1、首先在powerdesign设计好数据库结构, 然后点击Database -> Configure Connections . 在弹出的对话框中切换到Connection Profiles栏目;点击Add Data Source(CtrlN)图标,弹出Co…

扫地机器人水箱背景_一种扫地机器人用水箱及扫地机器人的制作方法

本实用新型涉及除尘技术领域,并且更具体地涉及一种滤扫地机器人用水箱及扫地机器人。背景技术:扫地机器人又叫懒人扫地机,是一种能对地面进行自动吸尘的智能家用电器。因为它能对房间大小、家具摆放、地面清洁度等因素进行检测,并…

微信小程序开发错误——底部导航栏没有显示完全

微信小程序开发错误——底部导航栏没有显示完全 原因:由于在app.json中设置跳转页面时,假设有A、B、C、D四个图标(点击可以跳转),B和C的跳转页面相同,C的图标就会覆盖B的图标,B的图标就相当于消…

华东电脑申威服务器_华东电脑:申威服务器首批量产下线,国产化业务落地里程碑事件...

原标题::申威服务器首批量产下线,国产化业务落地里程碑事件 来源:安信证券事件:根据电科软信子集团官网,12月30日上午,中国电科在沪举行申威服务器首批量产下线仪式暨公司旗下华诚金锐合作伙伴签…