会员可以在此提问,百战程序员老师有问必答
对大家有帮助的问答会被标记为“推荐”
看完课程过来浏览一下别人提的问题,会帮你学得更全面
截止目前,同学们一共提了 134113个问题

dc0f8bcd20d5a6ed3f843c9f4c30679.png

WEB前端全系列/第十四阶段:微信小程序/小程序API 14057楼

planeWar0.9.zip

老师,我的代码对照过了,运行结果和老师讲的相同,问题就是在控制台中报错,不知如何解决。

image.png

JAVA 全系列/第一阶段:AI驱动的JAVA编程/飞机大战小项目训练 14059楼
Python全系列/第九阶段:Flask百战电商后台系统/Flask百战电商后台项目 14060楼

老师,添加filter之后一直访问不了资源,如图:

Snipaste_2021-03-21_17-55-08.png

老师帮忙查看一下

filter部分代码:

package com.bjsxt.web.filter;

import com.bjsxt.commons.Constants;
import com.bjsxt.pojo.User;

import javax.servlet.*;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import java.io.IOException;

//创建过滤器
//判断用户是否进行登录的过滤器
@WebServlet(urlPatterns = {"*.do","*.jsp"})
public class UserLoginFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {

    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        //参数强制类型转换
        HttpServletRequest request = (HttpServletRequest) servletRequest;
        //获得请求的url路径
        String uri = request.getRequestURI();


        //判断当前请求是否含有login.jsp或者为login.do,如果是,就得放行,不能全部拦截,否则就是沙雕系统了
        if (uri.indexOf("login.jsp") != -1 || uri.indexOf("login.do") != -1){
            System.out.println("执行了doFilter放行1");
            filterChain.doFilter(servletRequest,servletResponse);
        } else {
            //根据session信息判断是否进行登录执行操作,若没有进行登录,则不允许访问
            HttpSession session = request.getSession();
            //获得user对象
            User user = (User) session.getAttribute(Constants.USER_SESSION_KEY);
            System.out.println("未执行");
            //进行判断
            if (user != null) {
                //进行放行
                filterChain.doFilter(servletRequest, servletResponse);
            }else {
                request.setAttribute(Constants.REQUEST_MSG,"不登录不好使~");
                //进行请求转发
                request.getRequestDispatcher("login.jsp").forward(servletRequest, servletResponse);

            }
        }
    }

    @Override
    public void destroy() {

    }
}

JAVA 全系列/第六阶段:JavaWeb开发/Web实战案例 14063楼

//服务端代码
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;

public class BasicSocketClient {
    public static void main(String[] args) {
        Socket socket=null;
        PrintWriter pw=null;

        try {
            //创建Socket对象,两个参数:1.服务端的IP地址,2.服务端所监听的端口
            socket =new Socket("127.0.0.1",8888);
            pw.println("服务端 你好");
            pw.flush();

        } catch (IOException e) {
            e.printStackTrace();
        }finally{
            if (pw!=null){
                pw.close();
            }
            if (socket!=null){
                try {
                    socket.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }
}
//客户端代码

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;

public class BasicSocketServer {
    public static void main(String[] args) {
        Socket socket=null;
        BufferedReader br=null;
        try {
            ServerSocket serverSocket=new ServerSocket(8888);
            System.out.println("服务器启动等待监听。。");
            //启动服务器监听
            socket= serverSocket.accept();
            //读取客户端发送的消息
            br= new BufferedReader(new InputStreamReader(socket.getInputStream()));
            System.out.println(br.readLine());
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            if (br!=null){
                try {
                    br.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            if (socket!=null){
                try {
                    socket.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }


    }
}
为啥我的结果报错,服务端输出null

image.png

image.png


JAVA 全系列/第二阶段:JAVA 基础深化和提高/网络编程(旧) 14065楼

老师我在使用get 有参请求和post 请求时为什么打印不出来呢?

网上找到方法在php的开头加

ini_set("error_reporting","E_ALL & ~E_NOTICE");
发现打印的是  {12: "34", info: null}
为什么info 是Null
<!doctype html>
<html lang="us">
<head>
    <meta charset="utf-8">
    <title>jqajax</title>
    <script src="jquery-3.5.1.js"></script>
</head>
<style>
    button{
        padding:4px;
    }
</style>
<body>
<span>用户名:<input type="text"  class="usename" /> </span><br>
<span>密码:<input type="text"  class="password" /> </span><br>
<button>get无参</button>
<button>get有参</button>
<button>post请求</button>
<script>
var $name=$('.usename')
var $pass=$('.password')
var button= $('button')
//get 有参请求
button.eq(1).click(function () {
    $.ajax({
        //调用方式
        type: "GET",
        //发送的后台地址
        url: 'jqajax.php?username='+$name.val()+'&content='+$pass.val(),
        // data: {username:$name.val(), content:$pass.val()},
        //交互的数据格式
        dataType: "json",
        //当后台返回数据时,本函数自动执行,用来获取后台返回的具体数据内容
        success: function(res){
            console.log(res)
        }
    });
})
//post请求
button.eq(2).click(function () {
    $.ajax({
        //调用方式
        type: "post",
        //发送的后台地址
        url: 'jqajax.php',
        data: {username:$name.val(), content:$pass.val()},
        //交互的数据格式
        dataType: "json",
        //当后台返回数据时,本函数自动执行,用来获取后台返回的具体数据内容
        success: function(res){
            console.log(res)
        }
    });
})
</script>
</body>
</html>
<?php
 //get有参请求
   //$__GET//表示前端请求方式为get   并把前端传参带过来
      $arr=array('12'=>'34','info'=>$__GET);
   //通过echo 和 json_encode()方法将这个数据转换为json,并返回前端
       echo json_encode($arr);
 //$__POST//表示前端请求方式为post   并把前端传参带过来
       $arr=array('12'=>'34','info'=>$__POST);
  //通过echo 和 json_encode()方法将这个数据转换为json,并返回前端
                echo json_encode($arr);
  ?>


WEB前端全系列/第五阶段:前后端交互/PHP、数据库编程与设计 14069楼

课程分类

百战程序员微信公众号

百战程序员微信小程序

©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园
网站维护:百战汇智(北京)科技有限公司
京公网安备 11011402011233号    京ICP备18060230号-3    营业执照    经营许可证:京B2-20212637