JavaWeb简单实例——Ajax请求

简单介绍:

在上一章节我们展示了关于jQuery的一些基本操作,接下来我们就要进行Ajax的一些基础操作,在真正执行操作之前,我们还需要一点前置的准备,就是关于发送和请求JSON数据的准备。

请求JSON数据:

JSON文件的数据是由一组方括号包裹多个花括号,花括号里面有多个键值对组成的。JSON的好处就是可以被处理成对象,方便我们获取其中的数据,不用复杂的截取数据操作。在我们的操作中,是将一个对象数据封装成为一个JSON格式的文件。

jar包准备(使用Maven帮我们下载):

在我们之前的下载中,是去官网找依赖包也就是jar包进行下载,但是我们这次需要下载的jar包有点多,有6个,所以我们使用maven来帮我们下载完之后在maven的本地仓库中直接复制过来就好了。

pom.xml文件内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>Maven_JavaWeb</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>net.sf.json-lib</groupId>
            <artifactId>json-lib</artifactId>
            <classifier>jdk15</classifier>
            <version>2.4</version>
        </dependency>
        <dependency>
            <groupId>net.sf.ezmorph</groupId>
            <artifactId>ezmorph</artifactId>
            <version>1.0.6</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.5</version>
        </dependency>
        <dependency>
            <groupId>org.ow2.util.bundles</groupId>
            <artifactId>commons-collections-3.2.1</artifactId>
            <version>1.0.0</version>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.9.4</version>
        </dependency>
    </dependencies>
</project>

 写好依赖项之后,一开始当然是红色的,因为它还没有扫描配置项并下载,剩下的就是我们需要刷新maven,等待一会他就会帮我们下载并配置好依赖项,里面的内容都变成正常的白色了,就表示已经下载完成了。当然我们这里并不需要它帮我们配置,我们只需要它帮我们下载就好了。下载好之后,如果你们之前使用过Maven并修改了本地仓库的路径,那就去你修改之后的本地仓库路径去寻找,如果你没有修改,那么默认的本地路径就在你的C:\Users\33680\.m2\repository下面就是本地仓库所有的依赖项。

具体的我们需要的jar包有六个:

找到这六个jar包之后,复制到lib文件夹下面就可以正常的使用了。 

代码实现:

之前说过,我们是将Java类中的数据封装成一个JSON数据所以首先我们要有一个存放数据的JavaBean然后是发送端Servlet类去设置数据并发送数据,网页请求端JSP去请求数据以及将数据添加到网页中。

JavaBean类:

public class Book {
    private String name;
    private double price;
    private String author;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public Book(String name, double price, String author) {
        this.name = name;
        this.price = price;
        this.author = author;
    }

    public Book() {
    }
}

Servleyt类:

import net.sf.json.JSONArray;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

@WebServlet(name = "ResponseJsonServlet" , value = "/ResponseJsonServlet")
public class ResponseJsonServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        List<Book> lb = new ArrayList<>();
        Book b1 = new Book();
        b1.setName("《JavaWeb程序开发》");
        b1.setAuthor("黑马程序员");
        b1.setPrice(12);
        Book b2 = new Book();
        b2.setName("《Vue程序开发》");
        b2.setAuthor("人邮教育");
        b2.setPrice(12);
        lb.add(b1);
        lb.add(b2);
        JSONArray jsonArray = JSONArray.fromObject(lb);
        resp.setContentType("text/html;charset=utf-8");
        resp.getWriter().println(jsonArray);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }
}

JSP页面:

<%--
  Created by IntelliJ IDEA.
  User: 33680
  Date: 2022/11/29
  Time: 15:47
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>请求Json数据</title>
    <script src="jquery-3.6.1.js"></script>
</head>
<body>
<button type="button">请求数据</button>
<table class="dataTable">
    <tr>
        <td>作者</td>
        <td>书名</td>
        <td>价格</td>
    </tr>
</table>
<script>
    $('button').click(()=>{
        $.getJSON('http://localhost:8080/ResponseJsonServlet',(data)=>{
            let html ='';
            for(var Book in data){
                html += '<tr>'
                for(var key in data[Book]){
                    html += '<td>' + data[Book][key] + '</td>'
                    console.log(data[Book][key])
                }
                console.log(data[Book])
                html += '</tr>'
            }
            $('.dataTable').append(html);
        })
    })
</script>
</body>
</html>

运行效果:

我们可以直接访问一下这个Servle来看一下返回的数据的形式

 然后再运行JSP文件实现效果:

Ajax请求:Ajax请求方式的特点主要表现在他是异步的,也就是不需要刷新网页就可以实现数据的请求。

请求方式:

和之前我们进行的请求一样,我们只需要使用$.ajax()的方式进行调用就可以,但是不同的是,ajax请求支持很多的参数来精确的调整我们的请求以及请求之后的各种动作。

参数列表:

该方法只有一个参数,但是这个对象里包含了$.ajax()方法所需要的请求设置以及回调函数等信息,参数以key/value的形式存在,所有的参数都是可选的。常用参数见下表:

1.url

要求为String类型的参数,(默认为当前地址)发送请求的页面。

2.type

要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持。

3.timeout

要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。

4.async

要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。如果需要同步请求,请将此选项设置为false。注意,同步请求将锁住浏览器,用户其他操作必须等待请求完成才可以执行。

5.cache

要求为Boolean类型的参数,默认为true(当dataType为Script时,默认为false),设置false将不会从浏览器缓存中加载请求信息。

6.data

要求为Object或String类型的参数,发送到服务器的数据。如果不是字符串,将自动转换为字符串格式。get请求中将附加在URL后。防止这种自动转换,可以查看  processData选项。对象必须为key/value格式,例如{foo1:"bar1",foo2:"bar2"}转换为&foo1=bar1&foo2=bar2。如果是数组,JQuery将自动为不同值对应同一个名称。例如{foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。

7.dataType

要求为String类型的参数,预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包的mine信息返回responseXML或responseText,并作为回调函数参数传递。可用的类型如下:

  xml:返回XML文档,可用jQuery处理。

  html:返回纯文本HTML信息;包含的script标签会在插入DOM时执行。

  script:返回纯文本javascript代码。不会自动缓存结果,除非设置了cache参数。注意在远程请求时(不在同一个域下),所有post请求都将转为get请求。

  json:返回JSON数据。

  jsonp:JSON格式。使用JSONP形式调用函数时,例如myurl?callback=?,JQuery将自动替换后一个“?”为正确的函数名,以执行回调函数。

  text:返回纯文本字符串。

8.beforeSend

要求为Function类型的参数,发送请求前可以修改XMLHttpRequest对象的函数,例如添加自定义HTTP头。在beforeSend中如果返回false可以取消本次ajax请求。XMLHttpRequest对象是唯一的参数。

  function(XMLHttpRequest){

    this;//调用本次ajax请求时传递的options参数

  }

9.complete

要求为Function类型的参数,请求完成后调用的回调函数(请求成功或失败均调用)。参数:XMLHttpRequest对象和一个描述成功请求类型的字符串。

  function(XMLHttpRequest,textStatus){

    this;    //调用本次ajax请求时传递的options参数

  }

10.success

要求为Function类型的参数,请求成功后调用的回调函数,有两个参数。

  (1)由服务器返回,并根据dataType参数进行处理后的数据。

  (2)描述状态的字符串。

  function(data,textStatus){

    //data可能是xmlDoc、jsonObj、html、text等

    this;    //调用本次ajax请求时传递的options参数

  }

11.error

要求为Function类型的参数,请求失败时被调用的函数。该函数有3个参数,即XMLHttpRequest对象、错误信息、捕获的错误对象(可选)。ajax事件函数如下:

  function(XMLHttpRequest,textStatus,errorThrown){

    //通常情况下textStatus和errorThrown只有其中一个包含信息

    this;    //调用本次ajax请求时传递的options参数

  }

12.contentType

要求为String类型的参数,当发送信息至服务器时。内容编码类型默认为"application/x-www-form-urlencoded"。该默认值适合大多数应用场合。

13.dataFilter

要求为Function类型的参数,给Ajax返回的原始数据进行预处理的函数。提供data和type两个参数。data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataTYpe参数。函数返回的值将由jQuery进一步处理。

  function(data,type){

    //返回处理后的数据

    return data;

  }

14.global

要求为Boolean类型的参数,默认为true。表示是否触发全局ajax事件。设置为false将不会触发全局ajax事件,ajaxStart和ajaxStop可用于控制各种ajax事件。

15.ifModified

要求为Boolean类型的参数,默认为false。仅在服务器数据改变时获取新数据。服务器数据改变判断的依据是Last-Modified头信息。默认值是false,即忽略头信息。

16.jsonp

要求为String类型的参数,在一个jsonp请求中重写回调函数的名字。该值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,例如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。

17.username

要求为String类型的参数,用于响应HTTP访问认证请求的用户。

18.password

要求为String类型的参数,用于响应HTTP访问认证请求的密码。

19.processData

要求为Boolean类型的参数,默认为true。默认情况下,发送的数据将被转换为对象(从技术角度来讲而非字符串)以配合默认内容类型"application/x-www-form-urlencoded"。如果要发送DOM树信息或者其他不希望转换的信息,请设置为false。

20.scriptCharset

要求为String类型的参数,只有当请求时dataType为"jsonp"或者"script",并且type是GET时才会用于强制修改字符集(charset)。通常在本地和远程的内容编码不同时使用。

这些参数全都都是放在一个对象里面以key-value的形式作为参数进行传递的,我们在一般的请求中不会全部使用只会使用几个比较常用的参数

代码实现:

发送请求的JSP页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>使用jQuery封装后的Ajax</title>
    <script src="jquery-3.6.1.js"></script>
</head>
<body>
<table>
    <tr>
        <td>用户名:</td> <td><input type="text" name="username" class="username"></td>
    </tr>
    <tr>
        <td>密码:</td> <td><input type="password" name="password" class="password"></td>
    </tr>
</table>
<button id="main">登陆验证</button>
<p class="data"></p>
<script>
    $('#main').click(() => {
        $.ajax({
            url:'http://localhost/ajaxServer',
            data:{
                username:$('.username').val(),
                password:$('.password').val()
            },
            success(login){
                if(login === "true"){
                    $('.data').html("登陆成功!")
                }else {
                    $('.data').html("登陆失败!")
                }
            }
        })
    })
</script>
</body>
</html>

响应请求的Servlet类:

package Semester_3.src.AJAX;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(name = "ajaxServer" , value = "/ajaxServer")
public class ajaxServer extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        String username = req.getParameter("username");
        String password = req.getParameter("password");
        if(username.equals("张三") && password.equals("123456")){
            resp.getWriter().write("true");
        }else {
            resp.getWriter().write("false");
        }
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }
}

运行效果:

 

可以看到我们在输入不同的内容的时候,返回的相应内容也是不同的,并且全程我们的页面都没有刷新,所以我们说Ajax是一个异步请求的过程 

简单实例:为了体现我们的Ajax是在页面无刷新的请求过程,我们来做一个案例

案例需求:

当我们输入完用户名之后,判断数据库中是否存在相同的用户名,如果存在则显示已存在,如果不存在则显示不存在可以使用

运行过程:

首先我们看到当我们输入一个已经存在与数据库中的名字的时候,当我们的输入框失去焦点的时候,会出现用户名以存在 

代码实现:

数据库数据:

数据库判断:

package Semester_3.src.AJAX;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(name = "CheckLoginJquery" , value = "/CheckLoginJquery")
public class CheckLoginJquery extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        try {
            String username = req.getParameter("username");
            String login = DataSelectQuery.select(username);
            resp.setContentType("text/html;charset=utf-8");
            resp.getWriter().write(login);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doGet(req, resp);
    }
}

数据库查询:

package Semester_3.src.AJAX;

import java.sql.*;

public class DataSelectQuery {
    public static String select(String name) throws Exception {
        Class.forName("com.mysql.cj.jdbc.Driver");
        String url = "jdbc:mysql:///jdbc_demo?serverTimezone=UTC";
        String username = "root";
        String passwd = "@gaoyang1";
        Connection conn = DriverManager.getConnection(url, username, passwd);
        String SQL = "select * from user where username = ?";
        PreparedStatement stat = conn.prepareStatement(SQL);
        stat.setString(1,name);
        ResultSet set = stat.executeQuery();
        if(set.next()){
            return "false";
        }else {
            return "true";
        }
    }

    public static void main(String[] args) throws Exception {
        String s = select("赵六");
        System.out.println(s);
    }
}

JSP页面:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登陆检查</title>
    <style>
        *{
            margin: 0 auto;
        }
        table{
            border: 1px solid black;
            text-align: center;
            width: 300px;
            height: 150px;
        }
        button{
            width: 100px;
        }
        td{
            border: 1px solid black;
        }
        #prompt{
            color: red;
            font-weight:bold;
        }
    </style>
    <script src="jquery-3.6.1.js"></script>
</head>
<body>
<form action="/CheckLogin">
    <table>
        <tr>
            <td>用户名:</td>
            <td>
                <input type="text" name="username" id="in_user">
<!--                要用行内式写属性写display属性-->
                <p id="prompt" style="display: none">用户名已存在!</p>
            </td>
        </tr>
        <tr>
            <td>密码:</td> <td><input type="password" name="password"></td>
        </tr>
        <tr><td colspan="2"><button type="submit">提交</button></td></tr>
    </table>
</form>
<script>
    $('#in_user').blur(()=>{
        $.ajax({
            url:'http://localhost/CheckLoginJquery',
            data:{
                username:$('#in_user').val()
            },
            success(login){
                console.log(login)
                if(login == "false"){
                    $('#prompt').attr('style','display: ;')
                }else {
                    $('#prompt').attr('style','display: none;')
                }
            }
        })
    })
</script>
</body>
</html>
Error_exception_worn
关注 关注
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ajax请求实例
qq_31878547的博客
05-17 1778
什么是Ajax请求AJAX 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。 ajax 是一种浏览器通过 js 异步发起请求,局部更新页面的技术。 Ajax 请求的局部更新,浏览器地址栏不会发生变化 局部更新不会舍弃原来页面的内容 原生 AJAX 请求的示例: <script type="text/javascript"> // 在这里使用 javaScript 语言发起 Ajax 请求
JavaWeb核心技术——JSP动态网页技术
成功在于坚持!
04-01 3955
目录 1,JSP 概述 2,JSP 快速入门 2.1 搭建环境 2.2 导入 JSP 依赖 2.3 创建 jsp 页面 2.4 编写代码 2.5 测试 3,JSP 原理 4,JSP 脚本 4.1 JSP 脚本分类 4.2 案例 4.2.1 需求 4.2.2 实现 4.2.3 成品代码 4.2.4 测试 4.3 JSP 缺点 5,EL 表达式 5.1 概述 5.2 代码演示 5.3 域对象 6,JSTL标签 6.1 概述 6.2 if 标签 6.3 forEac
非常简单Ajax请求实例
12-04
Ajax不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术。通过Ajax,您可以使用 JavaScript的XMLHttpRequest对象来直接与服务器进行通信。您可以在不重载页面的情况与 Web 服务器交换数据。在本文的例子中,我们将演示当用户向一个标准的HTML表单中输入数据时网页如何与web服务器进行通信。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <
ajax请求例子
Faker__的博客
05-12 740
function commitTask(data) { data = JSON.stringify(data) $.ajax({ type: "post", url: 'http://127.0.0.1:9999' + '/task/taskHandle', data: data, contentType: 'application/json;charset=UTF-8',
AJAX请求(GET、POST、响应JSON)_ajax post json
最新发布
2401_86963534的博客
09-11 972
``在浏览器中打开后如下,再写一个服务端js(server.js),/server是路径输入访问请求后响应得到预置的响应体。修改html文件,拿到button元素和result结果,button绑定请求事件后响应成功设置result文本信息。最后得到的效果如下,如果需要在请求里加上参数使用?parameter=100这样的方式多个参数用&,下面看一下JSON的案例,按下键盘任意键触发事件响应服务器的JSON数据,
Ajax请求示例
weixin_46482875的博客
05-11 3882
Ajax请求步骤与代码 前端 文章标签: ajax jquery ...
Ajax请求数据小实例
10-18
使用Ajax get请求数据的小例子,使用$.each()循环显示到表格,里面有接口,大家可以使用,欢迎指导学习
JavaWeb课程设计——图书馆管理系统.doc
11-25
文档中虽然没有列出完整代码,但提到了登录功能的实现,包括AJAX请求、参数传递、服务器响应处理等,这展示了前端与后端的交互过程。 八、效果展示 最后,文档附带了系统界面的截图,展示了用户登录、图书查询、...
JavaWeb课程设计——图书馆管理系统.docx
12-30
### JavaWeb课程设计——图书馆管理系统知识点总结 #### 一、实验目的 本次实验的主要目标是在实践过程中深化对JavaWeb技术的理解,并初次应用设计模式(GoF),以体会其带来的优势。此外,还将结合数据库技术,...
JavaWeb 第6章 Ajax 与 JQuery 任务1:使用原生 JavaScript 发送 Ajax请求
JavaDarren的博客
06-20 1014
JavaWeb 应用设计及实战 目录 上一章 下一章 上一个任务/上一节 下一个任务/下一节 实例链接 点我 目录 任务1 使用原生 JavaScript 发送 Ajax 请求 6.1.1 认识 Ajax 6.1.2 认识 XMLHttpRequest 1.创建 XMLHttpRequest 对象 .2. XMLHttpreques...
实现一个ajax请求简单例子
热门推荐
weixin_42132143的博客
04-10 2万+
效果:在前端页面的text框输入一个id,点击按钮,发送ajax请求到数据库查询对应用户数据返回,将用户信息显示在页面,实现局部刷新。 不说废话直接来! 1.前端jsp页面 (代码的注释写的非常详细了,直接看代码就行了,我就不再解释了) <%@ page contentType="text/html;charset=UTF-8" language="java" %> <...
一个最简单AJAX实例及解析
04-14 1527
去年开始看AJAX时候所写的第一个小程序,整理了下。应该算AJAX简单的应用了。首先,演示一下实际运行的效果。点击弹出新页面中的“See Author”链接,你将会看到该页面作者。从页面提交到显示从服务器获得的结果,这段过程你将不会发现页面的重刷新。 下面给出该示例的代码: 1. ajax.html A simple AJAX example function findAuth
AJAX请求实例
09-08 251
发送一个简单的HTTP请求. 我们用JavaScript请求一个HTML文件: test.html, 文件的文本内容为 "I'm a test." 然后我们"alert()"弹出test.html文件的内容. var http_request = false
Ajax 请求实例
熊老大的专栏
03-19 617
后台 [HttpPost] public JsonResult CaculateScore(string StuNo) { var result = new object[2] { new { StuNo = StuNo,
AJAX 请求实例
javazhuanzai的专栏
01-15 308
====================================================== 注:本文源代码点此下载 ====================================================== ajax suggest实例 在下面的 ajax 例子中,我们会演示当用户向一个标准的 html 表单中输入数据时网页如何与 web 服务器进行
Ajax 请求实例
tokikou的博客
11-16 328
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> <script type="text/javascript"> function ajaxGet() {
AJAX请求示例
weixin_45505615的博客
06-23 201
AJAX
167
原创
174
点赞
537
收藏
138
粉丝
关注
私信
写文章

热门文章

  • Telegram死循环(已解决) 44653
  • Vue简单示例——weex跨平台解决方案 4268
  • JavaWeb问题解决:关于JSP中使用System类会出现服务器错误的情况 3888
  • SpringBoot——默认页面在哪里? 3662
  • JavaWeb实现简单购物车案例 3362

分类专栏

  • Python基础 2篇
  • Java基础 1篇
  • SpringCloud 11篇
  • 微信小程序 3篇
  • MySQL基础 6篇
  • Redis 2篇
  • 数据分析
  • 数据结构

最新评论

  • Telegram死循环(已解决)

    Error_exception_worn: 我这里现在是没有了,节点都不能用,要不集资我开一下大家一起用的海外代理表情包

  • Telegram死循环(已解决)

    Error_exception_worn: 解决了就好

  • Telegram死循环(已解决)

    Error_exception_worn: 他有对应的官网我记得,可以去外面搜索一下找一下

  • Telegram死循环(已解决)

    zhangyu1226: 多谢解答,问题已解决 表情包

  • Telegram死循环(已解决)

    柒月拾金: 有免费的代理嘛老哥

最新文章

  • Python配置国内镜像源
  • Java中的Lambda表达式
  • PythonWeb——Django框架
2024年3篇
2023年117篇
2022年47篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

深圳坪山网站建设公司海兴网站优化报价罗定百度网站优化广州网站seo优化推广温州网站内容优化网站优化怎么申请网站提速是否是过度优化在哪个平台做网站好 做优化沁阳网站推广优化哪家不错海门网站优化稳定吗网站首页优化公司多少钱一年网站优化公司哪家有名北京网站的优化谷歌网站优化工具营销型网站如何优化 7网站排名优化要如何提升阿克苏网站怎么优化奎文网站优化推广哪家好深圳靠谱的网站推广与优化政府网站优化西安正规seo优化网站报价珠海外贸网站优化池州网站优化公司襄阳本地网站优化公司排名天河外贸网站优化推广公司莱芜网站优化是什么山西网站优化公司电话泰安原装网站优化开户银川网站推广优化钟祥市网站关键词排名优化报价临城县网站优化香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

深圳坪山网站建设公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化