自定义工程 Oauth随笔

mymx2
mymx2 2019-07-18 18:32
阅读需:0

biz oauth调用随笔

demo模块下添加:


	net.dreamlu
	mica-http
	1.1.5

DemoController添加:

        /**
	 * code模式:访问地址:http://localhost:8100/oauth/authorize?client_id=saber&redirect_uri=http://localhost:8200/demo/code&response_type=code
	 *
	 * @param authentication
	 *
	 * @return
	 */
	@GetMapping("/code")
	public R code(@RequestParam Map authentication) {
		if (authentication.get("code") != null) {

			HttpRequest.setGlobalLog(LogLevel.BODY);

			String Authorization = "Basic " + Base64.getEncoder().encodeToString("saber:saber_secret".getBytes());

			String value = HttpRequest.post("http://localhost:8100/oauth/token")
				.addHeader("Authorization", Authorization)
				.bodyString("Important stuff")
				.formBuilder()
				.add("grant_type", "authorization_code")
				.add("scope", "all")
				.add("redirect_uri", "http://localhost:8200/demo/code")
				.add("code", String.valueOf(authentication.get("code")))
				.execute()
				.asString();
			return R.data(JsonUtil.readValue(value, Map.class));

		}
		return R.data(authentication);
	}

	/**
	 * 密码模式:访问地址:http://localhost:8200/demo/pwd?username=admin&password=admin
	 *
	 * @return
	 */
	@GetMapping("/pwd")
	public R pwd(String username, String password) {

		HttpRequest.setGlobalLog(LogLevel.BODY);

		String Authorization = "Basic " + Base64.getEncoder().encodeToString("saber:saber_secret".getBytes());

		String value = HttpRequest.post("http://localhost:8100/oauth/token")
			.addHeader("Authorization", Authorization)
			.bodyString("Important stuff")
			.formBuilder()
			.add("grant_type", "password")
			.add("scope", "all")
			.add("username", username)
			.add("password", password)
			.execute()
			.asString();
		return R.data(JsonUtil.readValue(value, Map.class));
	}

code模式地址:code模式

密码模式地址:密码模式


评论