postman测试restful接口问题

提问 20 1802
biggun
biggun 2019-01-09
版本:renren-security 开发环境:
我新增加一个模块,controller层写了一个restful接口,用postman测不通,响应是200,但是接口里并没有接收到数据。
回帖
  • 返回200,应该是没有问题啊,可以开启debug模式试试,看有没有进controller方法
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    接口里我做了打印输出,但是没有执行System.out.println("playType:"+param.getPlayType());
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    这个项目里的所有接口用postman都不能调啊
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 接口里我做了打印输出,但是没有执行System.out.println("playType:"+param.getPlayType());
    0 回复
  • @biggun 不是不能调用,是调用方式错了,了解下http协议,参数需要使用json,在body里传输
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 我确实是用postman在body里用json传输的
    0 回复
  • @biggun 把controller的方法贴出来吧
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark img[//cdn.renren.io/89f86201901091155104919.png]
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark @RestController @RequestMapping("/play") public class WebPlayController { private static final Logger log = LoggerFactory.getLogger(WebPlayController.class); @Autowired private IStreamManager iStreamManager; //客户端发送请求到中心处理业务。 @CrossOrigin @RequestMapping(value = "/playStream",method = RequestMethod.POST) public String playStream(@RequestBody String jsonParam, HttpServletResponse response) { PlayStreamParam param = JSON.parseObject(jsonParam, PlayStreamParam.class); PlayStreamInfo info = new PlayStreamInfo(); System.out.println("playType:"+param.getPlayType()); if(param.getPlayType() == 1) {//播放请求类型为关闭。 info.setStatus(PlayStreamInfo.SUCCESS); } else {//播放请求类型为打开。 //添加一个直播流到流媒体服务器。 info = iStreamManager.addLiveStream(param); } String result = JSON.toJSONString(info, SerializerFeature.WriteNullStringAsEmpty); log.info("Response info is :" + result); return result; } }
    0 回复
  • @biggun public String playStream(@RequestBody PlayStreamParam param, HttpServletResponse response) { 改成这样就对了
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    还是不行啊
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 还是不可以啊
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 系统有没有做外部调用系统接口的限制啊
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 确实都不能调用 除非的项目里面的html 和js可以调用用postman都无法调用
    0 回复
  • @biggun debug,我感觉你都没有进controller
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 没进controller 为什么呢
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 我debug过了 根本没进来 为什么????
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark 如果外界不能调用restful接口的话,我用这个服务就没有意义啊
    0 回复
  • biggun
    biggun (楼主)
    2019-01-09
    @Mark renren-security系统对我的请求有拦截吗
    0 回复
  • JunYi
    2019-09-26
    img[//cdn.renren.io/e3a25201909261005114867.png] 从你上传的图片看出,你返回的请求结果是一堆html,你可以点上面的preview按钮看一下, 显示出来的应该是你的登录页面。 这说明你的系统没有登录,你没登录自然没有权限操作系统里面的内容。 不然你随便给个url 就可以操作系统的内容,这样多危险。 现在你要做的是 首先你的登录你的系统,拿到你的cookie, 然后把cookie 放到postman的请求头 ,这样应该就可以了。 如果还是不行,你就看返回结果,返回结果还是html代码的话,就是说明,你还是没登录成功。 这你就要从登录系统设计那里研究,怎么才算登录成功了
    0 回复