客户端发送get请求,请求里面写了data信息,为什么服务器里显示为null值?

index2.jsp页面:

<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
<%
	pageContext.setAttribute("ctp", request.getContextPath());
%>
</head>

<body>

	<a id="#Btn" href="getstuinfo">获取学生信息</a>
	
</body>
<script type="text/javascript">

		$("#aBtn").click(function() {
	
		$.get('${ctp}/getstuinfo',"lastName=admin&age=18");
		
		return false;
	});
</script>
</html>

ajaxservlet.java

package com.zzj.servle;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

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 com.google.gson.Gson;

/**
 * Servlet implementation class AjaxServlet
 */
@WebServlet("/getstuinfo")
public class AjaxServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
    /**
     * @see HttpServlet#HttpServlet()
     */
    public AjaxServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

	/**
	 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		String name = request.getParameter("lastName");
		String age = request.getParameter("age");
		System.out.println("获取到的lastname:"+ name +";获取到的age的值"+ age);
		
		
		
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
	 */
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doPost(request, response);
	}

}

点击链接:
在这里插入图片描述
控制台显示:
在这里插入图片描述
使用Chrome的开发模式查看:
在这里插入图片描述
为什么会得不到前端传回来的值呢?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
很抱歉,作为AI语言模型,我没有权限访问网络或与计算机进行交互,并且不支持编和运行实际的代码。但是,我可以给您提供一个大致的FTP客户端的代码框架,以供参考: ``` #include <stdio.h> #include <stdlib.h> #include <string.h> #include <netdb.h> #include <sys/socket.h> #include <arpa/inet.h> #define BUF_SIZE 1024 int main(int argc, char *argv[]) { int sockfd, portno, n; struct sockaddr_in serv_addr; struct hostent *server; char buffer[BUF_SIZE]; if (argc < 4) { fprintf(stderr,"Usage: %s hostname port filename\n", argv[0]); exit(1); } portno = atoi(argv[2]); sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) { perror("ERROR opening socket"); exit(1); } server = gethostbyname(argv[1]); if (server == NULL) { fprintf(stderr,"ERROR, no such host\n"); exit(1); } memset(&serv_addr, 0, sizeof(serv_addr)); serv_addr.sin_family = AF_INET; memcpy((char *) &serv_addr.sin_addr.s_addr, (char *) server->h_addr, server->h_length); serv_addr.sin_port = htons(portno); if (connect(sockfd,(struct sockaddr *) &serv_addr,sizeof(serv_addr)) < 0) { perror("ERROR connecting"); exit(1); } // send username and password char username[BUF_SIZE], password[BUF_SIZE]; printf("Username: "); fgets(username, BUF_SIZE, stdin); printf("Password: "); fgets(password, BUF_SIZE, stdin); char auth_command[BUF_SIZE]; sprintf(auth_command, "USER %s\r\nPASS %s\r\n", username, password); n = write(sockfd, auth_command, strlen(auth_command)); if (n < 0) { perror("ERROR writing to socket"); exit(1); } // receive response from server n = read(sockfd, buffer, BUF_SIZE-1); if (n < 0) { perror("ERROR reading from socket"); exit(1); } buffer[n] = '\0'; printf("%s", buffer); // send request to retrieve file char filename[BUF_SIZE]; strcpy(filename, argv[3]); char retr_command[BUF_SIZE]; sprintf(retr_command, "RETR %s\r\n", filename); n = write(sockfd, retr_command, strlen(retr_command)); if (n < 0) { perror("ERROR writing to socket"); exit(1); } // receive response from server n = read(sockfd, buffer, BUF_SIZE-1); if (n < 0) { perror("ERROR reading from socket"); exit(1); } buffer[n] = '\0'; printf("%s", buffer); // receive file data FILE *file = fopen(filename, "w"); while ((n = read(sockfd, buffer, BUF_SIZE-1)) > 0) { fwrite(buffer, 1, n, file); } fclose(file); close(sockfd); return 0; } ``` 该代码包含了以下步骤: 1. 解析命令行参数,包括FTP服务器的主机名、端口号和要获取的文件名。 2. 创建套接字并连接到FTP服务器。 3. 发送用户名和密码以进行认证。 4. 接收来自服务器的认证响应。 5. 发送请求以获取文件。 6. 接收来自服务器的文件传输响应。 7. 接收文件数据并将其入本地文件中。 8. 关闭套接字并退出程序。 请注意,该代码仅为示例,可能需要根据您的具体情况进行修改。例如,您可能需要添加错误处理和更多的输入验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你在狗叫什么、

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值