我正在开发一个简单的crud应用程序,没有前端,但我想有一个非常简单的视觉为自己和观众。现在我已经创建了一个简单的jsp文件与一组标签'a'。这并不难完成所有的GET请求。但是,POST请求给予一个错误“HTTP状态415 -不支持的媒体类型”。
这是我的.jsp
<%@ page contentType="text/html;charset=UTF-8" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>Title</title>
<style>
</style>
</head>
<body>
<div class="admin div">
<h2>Options for Admin</h2>
<li><a href="">Create User</a></li>
<li><a href="">Update User</a></li>
<li><a href="">Delete User</a></li>
<li><a href="${pageContext.request.contextPath}/rest/admin/users/100003" class="deal">Get User by ID(for example 100003</a></li>
<li><a href="${pageContext.request.contextPath}/rest/admin/users/by-email?email=david_D@gmail.com" class="deal">Get User by Email(for example - david_D@gmail.com)</a></li>
<li><a href="${pageContext.request.contextPath}/rest/admin/users" class="deal">All users</a></li>
<br>
<li><a href="">Create restaurant</a></li>
<li><a href="">Update restaurant</a></li>
<li><a href="">Delete restaurant</a></li>
<br>
<li>
<form method="post" action="/rest/admin/restaurants/100005/meals">
<div class="add">
<dt>Description</dt>
<input type="text" name="description" value="Some Meal"><br> </input>
</div>
<div class="add">
<dt>Price</dt>
<input type="number" name="price" value="50"><br> </input>
</div>
<button type="submit">SAVE</button>
</form>
</li>
<br>
<li><a href="">Update meal</a></li>
<li><a href="">Delete meal</a></li>
<li><a href="/rest/admin/restaurants/100005/meals" class="deal">Get actual meals (for example - by restaurant with ID = 100005)</a></li>
<li><a href="/rest/admin/restaurants/100005/meals/100010" class="deal">Get meal by ID (for example - by restaurant with ID = 100005, meal ID = 100010)</a></li>
</div>
</body>
</html>
当我尝试发送POST请求时,我收到“HTTP状态415 -不支持的媒体类型”。
网络中:
响应必须具有“json/application”内容类型,但请求具有“text/html”。仅在jsp-file中添加另一个contentType不起作用。
请分享你的经验。
1条答案
按热度按时间vzgqcmou1#
尝试让@PostMapping控制器方法Map看起来像这样:
@PostMapping(值=“/您的网址”,使用= {媒体类型.应用程序_JSON_值,媒体类型.文本_HTML_值},产生= {媒体类型.应用程序_JSON_值,媒体类型.文本_HTML_值})