您好,我目前正在尝试构建一个Spring Boot后端以与SyncFusion的Datamanager匹配(据我所知,他们为后端构建留档纯粹是为了. NET。)我已经设法让GET功能正常工作,因此我的数据类型映射是正确的,但发布会导致一些问题。具体来说,DataManager似乎发布了一个multipart/混合,其中包括我试图持久化的JSON对象以及某种批处理文件(我不关心)。由于我无法修改datamanager,我需要在Spring中想出一种方法来纯拉出JSON。我相信这真的很简单,但我对此相当陌生,找不到任何其他以前提出的与我当前情况相匹配的问题。这是Chrome开发人员工具中列出的请求详细信息的副本。
全体的
***请求URL:http://localhost:8082/schedule/$批处理
申请方式:POST
状态代码:415
远程地址:[:::1]:8082
推荐人策略:降级时无推荐人
响应标题
访问控制允许标头:授权、内容类型
访问控制允许方法:POST、PUT、GET、OPTIONS、DELETE
访问控制允许原点:*
访问-控制-最大-年龄:3600
内容类型:应用程序/json
日期:2019年11月22日星期五14:38:39 GMT
传输编码:分块
不同:起源
Vary:访问-控制-请求-方法
更改:访问控制请求标头
请求标头
接受:application/json、text/javascript、/;q=0.01,应用程序/json
接受编码:gzip、紧缩、br
接受语言:en-US,en;q=0.9
连接:保活
内容长度:358
内容类型:多部分/混合;边界=批次\u dddabc0b-930c-47fc-b7e5-934999f0adc9
主持人:localhost:8082
产地:http://localhost:4200
裁判:http://localhost:4200/main/schedule
Sec Fetch模式:cors
Sec Fetch站点:相同站点
用户代理:Mozilla/5.0(Windows NT 10.0; Win64; x64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/78.0.3904.108Safari /537.36
请求有效载荷
--<--pl hd--0/>-930 c-47 fc-b 7 e 5-934999 f 0 adc 9
内容类型:应用程序/http;msgtype=请求
POST/api/null HTTP/1.1
内容类型:application/json;字符集=utf-8
主持人:localhost:4200
{主题:m,id:4,开始时间:2019-11-21T06:30:00.000Z,结束时间:2019-11-21T07:00:00.000Z,IsAllDay:false}
--批号:dddabc0b-930c-47fc-b7e5-934999f0adc9--***
这是我的控制器的副本,它目前的状态。(基本上是为了接受常规应用程序/json帖子)
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.quietmodebackend.models.Appointment;
import com.quietmodebackend.repos.ScheduleRepository;
@CrossOrigin
@RestController
@RequestMapping("/schedule")
public class ScheduleController {
@Autowired
ScheduleRepository myRepo;
@GetMapping
public List<Appointment> getAppointments(HttpServletResponse response){
response.setStatus(200);
return myRepo.findAll();
}
@PostMapping("/$batch")
public Appointment postAppointments(HttpServletResponse response, @RequestBody Appointment appointment){
return myRepo.save(appointment);
}
}
任何帮助都将不胜感激。
Dear Customer,
Syncfusion Greetings
Scheduler CRUD actions support is not provided for WebApiAdaptor which could be the cause and for the same we already logged the below feature request.
https://www.syncfusion.com/feedback/2373/batch-handler-support-for-asp-net-core-while-using-webapi-adaptor
Kindly use UrlAdaptor like below sample.
Sample: https://stackblitz.com/edit/angular-ysiqa8-9s3lef?file=app.component.ts
Service: https://www.syncfusion.com/downloads/support/directtrac/general/ze/ej2-schedule-crud-1800404263
private dataManger: DataManager = new DataManager({
url: "http://localhost:25255/api/Batch",
crossDomain: true,
adaptor: new UrlAdaptor
});
Note: Keep the Service project in runnable state.
Regards,
M.Vinitha devi
有一个只接受内容类型multipart/mixed的REST API。 正在尝试使用restTemplate并生成内容类型为multipart/mixed的REST请求。如果注释setContentType restTemplate默认为多部分/表单数据。 但运气不好,举个例子,我如何调用API生成多部分/混合请求? 也许这个有帮助
我使用Spring引导上传文件。文件大小通常约为2GB,我们不能使用默认的Spring引导或,因为服务器具有有限的资源(磁盘空间)或用于缓冲的内存。所以我们想获取文件输入蒸汽并将文件直接存储到云存储中。 我知道spring boot有<code>多部分。已启用属性,因此我可以将其设置为false以跳过spring。但这会全局禁用多部分。是否有人知道是否有方法通过控制器/方法禁用多部分?
我想写一个REST服务,它用一个zipFile和一些json数据来响应,所有的东西都在一个多部分/混合请求中。 现在我尝试使用多部分/混合响应并返回一个MultiValueMap MyMultiValueMap存在以防止类型擦除(泛型)。 这给出了
我正在开发基于Spring 3.2的RESTful服务。我遇到了一个控制器处理混合多部分HTTP请求的问题,第二部分是XML或JSON格式的数据,第二部分是图像文件。 我正在使用@Request estPart注释来接收请求 User.java会这样- 据我所知,使用@RequestPart注释,我希望根据XML多部分部分的内容类型对其进行评估,并最终将其解编组到我的用户类中(我使用的是Jaxb2
混合控制器在单一的基础控制器里, 汇集了 REST 控制器与 Template 控制器两者的功能。 更多关于 Template 或 Rest 功能的资讯,请见 Controller_Rest 或 Controller_Template 页面。
我需要向我的Spring控制器发送一个带有json的文件。我有以下控制器类: 但当我在服务器上使用以下命令时: 我得到415不支持的媒体类型! 有线索吗?