From e91742731478fe20e2b0505dbd3b080bd39dfd32 Mon Sep 17 00:00:00 2001 From: winLsy <18332763730@163.com> Date: Wed, 17 Jan 2018 16:30:26 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=BD=93=E5=89=8D=E7=BB=91?= =?UTF-8?q?=E5=AE=9A=E7=A4=BE=E4=BA=A4=E8=B4=A6=E6=88=B7=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/social/MsConnectionStatusView.java | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/MsConnectionStatusView.java diff --git a/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/MsConnectionStatusView.java b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/MsConnectionStatusView.java new file mode 100644 index 0000000..2e75257 --- /dev/null +++ b/boot-starter/boot-starter-security/boot-starter-security-core/src/main/java/com/micro/fast/security/core/social/MsConnectionStatusView.java @@ -0,0 +1,39 @@ +package com.micro.fast.security.core.social; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.apache.commons.collections.CollectionUtils; +import org.springframework.social.connect.Connection; +import org.springframework.stereotype.Component; +import org.springframework.web.servlet.view.AbstractView; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 定义一个返回给前端第三方账户绑定的视图,拦截请求/connect,返回connect/status视图的信息,并装换成json格式 + * @author lsy + */ +@Component("connect/status") +public class MsConnectionStatusView extends AbstractView { + + private ObjectMapper objectMapper = new ObjectMapper(); + + + @Override + protected void renderMergedOutputModel(Map map + , HttpServletRequest httpServletRequest + , HttpServletResponse httpServletResponse) + throws Exception { + Map>> connections = (Map>>)map.get("connectionMap"); + Map result = new HashMap<>(5); + connections.forEach((key,value)->{ + result.put(key, CollectionUtils.isNotEmpty(value)); + }); + //返回json格式的数据 + httpServletResponse.setContentType("application/json;charset=UTF-8"); + httpServletResponse.getWriter().write(objectMapper.writeValueAsString(result)); + } +} \ No newline at end of file