일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 그리디
- Combinations
- 자바
- 카카오
- java
- Re
- KAKAO BLIND RECRUITMENT
- 동적 계획법
- Set
- 추석맞이 코딩챌린지
- 이분탐색
- backjoon
- 정렬
- divmod
- 프로그래머스
- 수학
- 재귀함수
- heapq
- 파이썬
- programmers
- dfs
- DateTime
- 백준
- 정규식
- python
- lambda
- BFS
- 위클리 챌린지
- Zip
- 다익스트라
Archives
- Today
- Total
상상쓰
[Firebase] 짧은 동적 링크 만들기 (java) 본문
참고 : https://sangsangss.tistory.com/107
JAVA 에서 POST 방식으로 짧은 동적 링크를 요청할 수 있다.
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
try {
JSONObject params = new JSONObject();
JSONObject suffix = new JSONObject();
params.put("longDynamicLink", "https://[URL 프리픽스]/?link=" + [긴 링크]);
suffix.put("option", "SHORT");
params.put("suffix", suffix);
String hurl = "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=[api_key]";
URL url = new URL(hurl);
HttpURLConnection http = (HttpURLConnection) url.openConnection();
http.setRequestMethod("POST");
http.setRequestProperty("content-type", "application/json");
http.setDoOutput(true);
http.setDoInput(true);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(http.getOutputStream()));
bw.write(params.toString());
bw.flush();
bw.close();
BufferedReader br = new BufferedReader(new InputStreamReader(http.getInputStream()));
String temp = "";
while ((temp = br.readLine()) != null) {
result = result.concat(temp);
}
br.close();
JSONParser jp = new JSONParser();
JSONObject jo = new JSONObject();
jo = (JSONObject) jp.parse(result);
result = (String) jo.get("shortLink"); // result = [동적 링크]
} catch (IOException e) {
e.printStackTrace();
}
다음, 긴 링크에 parameter 가 있는 경우, params 변수를 아래와 같이 나눈다.
JSONObject params = new JSONObject();
JSONObject dynamicLInkInfo = new JSONObject();
JSONObject suffix = new JSONObject();
dynamicLinkInfo.put("dynamicLinkDomain", "[URL 프리픽스 (https 생략)]");
dynamicLinkInfo.put("link", "[긴 링크 (?, & 포함 URL)]");
suffix.put("option", "SHORT");
params.put("dynamicLinkInfo", dynamicLinkInfo);
params.put("suffix", suffix);
'Programming' 카테고리의 다른 글
[java] HashMap value(값)로 정렬하기 (0) | 2021.10.24 |
---|---|
[java] PriorityQueue(우선순위 큐) 소개 (0) | 2021.10.24 |
[Spring] @PathVariable을 이용한 경로(@RequestMapping) 변수 (0) | 2021.08.26 |
[javascript] chart.js 활용하기 (0) | 2021.08.23 |
[Firebase] 짧은 동적 링크 만들기 (jquery) (0) | 2021.07.23 |
Comments