首页 > 解决方案 > request.getParameter 总是返回 null

问题描述

我正在使用离子应用程序。当用户登录时,会向服务器发送一个包含不同信息的文件。

let datos = this.getInfoLogin();

方法内容如下

getInfoLogin(): any {
    let datos = {
        "version": this.versionNumber,
        "user": this.loginGroup.value.user,
        "fechaLogin": this.getCurrentDate(),
        "password": this.loginGroup.value.password
    };

    return datos;
}

我使用 angular post 服务将该代码发送到服务器

this.http.postLogin(datos).subscribe(respLogin => {});

http.service.ts

@Injectable({
providedIn: 'root'
})
export class HttpService {

private url = 'http://localhost:8085/nombreApp/LoginServlet';

// Http Headers
headers: HttpHeaders = new HttpHeaders({
    Accept: "application/json",
    "Content-Type": "application/json; charset='utf-8'",
});

constructor(public http: HttpClient) {
    console.log("Servicio login listo");
}

postLogin(login): Observable<any> {
    return this.http.post(`${this.url}`, login, { headers: this.headers });
}
}

但是在服务器上,当我使用时,我总是得到 null

String user = request.getParameter("user");

登录Servlet.java

@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {

    try {
        response.setContentType("text/html");
        String user = request.getParameter("user");
        
    } catch (Exception e) {
        LOGGER.log(Level.SEVERE, "Error PrintWriter." + e.getMessage());
    }

}

我知道数据到达,但我不知道如何读取它。我究竟做错了什么?我进行了很多搜索,我发现正确的方法是这样。我是正确的?

标签: javaservletsserviceserverangular-httpclient

解决方案


推荐阅读