kotlin spring mvc request json 请求

// json 代码
{
/*用户信息*/ user: { username: '{$user.username}', headImg: '{$user.headImg}', targetId: '{$user.targetId}', openid: '{$user.openid}' }, /* 产品信息 */ productUrl: '', productImg: '', productPrice: '' }

// 后台代码

class ConnController {
    /**
     * 普通用户初始连接时请求。
     */
    class UserInitReq {
        var user: User = User()
    }

    @Autowired
    lateinit var connService: ConnService


    @PostMapping("/userToKfConn")
    @ResponseBody
    fun userToKfConn(@RequestBody userInitReq: UserInitReq,
                     req: HttpServletRequest,
                     resp: HttpServletResponse): Map<String, Any?> {

        return connService.handlerUserToKfConn(req, resp, userInitReq.user)

    }
}

 

前台发送 post (json)请求,后台是用这个方法接收 👆👆👆

如果 有 跨域 options 请求,请加上👇👇👇 方代码

package zero.kefu.core.filter

import org.springframework.stereotype.Component
import javax.servlet.Filter
import javax.servlet.FilterChain
import javax.servlet.ServletRequest
import javax.servlet.ServletResponse
import javax.servlet.http.HttpServletResponse

@Component
class CorsFilter : Filter {
    override fun doFilter(request: ServletRequest?, response: ServletResponse?, chain: FilterChain?) {

        val res: HttpServletResponse = response as HttpServletResponse
        res.setHeader("Access-Control-Allow-Origin", "https://abc.cn")
        res.setHeader("Access-Control-Allow-Methods",
                "POST, GET, OPTIONS, DELETE")
        res.setHeader("Access-Control-Max-Age", "3600")
        res.setHeader("Access-Control-Allow-Headers",
                "Content-Type, x-requested-with, X-Custom-Header, Authorization")
        res.setHeader("Access-Control-Allow-Credentials", "true")
        chain?.doFilter(request, res)
    }

}

 

posted on 2019-01-07 09:53  正义的伙伴!  阅读(665)  评论(0编辑  收藏  举报

导航

//增加一段JS脚本,为目录生成使用