Команда, которая работает на стороне клиента в моем проекте, попросила меня написать образец тестовой страницы и дать им рабочий URL-адрес, чтобы они могли ударить и вернуться 200. У них есть попросил меня также предоставить образец тела запроса. Вот тело запроса, которое я им дам.Создайте простую страницу, которая возвращает ответ JSON
{
"MyApp": {
"mAppHeader": {
"appId": "",
"personId": "",
"serviceName": "",
"clientIP": "",
"requestTimeStamp": "",
"encoding": "",
"inputDataFormat": "",
"outputDataFormat": "",
"environment": ""
},
"requestPayload": {
"header": {
"element": ""
},
"body": {
"request": {
"MyTestApp": {
"data": {
"AuthenticationRequestData": {
"appId": "",
"appPwd": ""
}
}
}
}
}
}
}
}
Чтобы разработать образец страницы, я понятия не имею, с чего начать. Прощайте, пожалуйста, на ваших downvotes (в случае, если вопрос кажется неуместным), поскольку у меня нет опыта работы с сервлетами JSP.
Вот что я имею на данный момент. Его простой Логин страница -
<%@ page language="java"
contentType="text/html; charset=windows-1256"
pageEncoding="windows-1256"
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<title>Login Page</title>
</head>
<body>
<form action="TestClient">
AppId
<input type="text" name="appID"/><br>
AppPassword
<input type="text" name="appPwd"/>
<input type="submit" value="submit">
</form>
</body>
</html>
И это мой сервлет класс -
package com.test;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class TestClient extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public TestClient() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/json");
App app = new App();
app.setAppID(request.getParameter("appID"));
app.setAppPassword(request.getParameter("appPwd"));
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
}
My App является простой класс Java, который имеет APPID и appPassword с добытчиками и сеттеров, так что я не собираюсь чтобы опубликовать это здесь.
Мой вопрос: я делаю это правильно или 100% неправильно? Пожалуйста, дайте мне ваш совет.
Если вы можете мне точку ссылки, где я могу получить лучшее представление о том, что должно быть сделано, что это нормально слишком. Или, если вы можете дать мне пример, все в порядке. Я просто разъясняю свой подход здесь. Я не чувствую себя очень уверенно, что я сделал это правильно, поэтому мне нужен совет. – rickygrimes
Если они запрашивают ответ 200 с данными JSON, они, вероятно, планируют использовать запрос AJAX. Это означает, что, вероятно, ожидается, что пользователь уже войдет в систему, может быть, что-то, что вы хотите проверить с ними. –
У меня нет ответов для вас, поскольку я столкнулся с подобной проблемой (хотя это для личного изучения); Я могу сказать вам одно, что я недавно узнал: сервлеты не имеют гражданства (поэтому, если вы собираетесь проверить эти _appID_ и _appPwd_, вы не сможете отличить от двух разных пользователей приложений). Думаю, вам лучше передать чек и поколение json другому фасоли. – watery