package itn.let.utl.user.service; import java.io.OutputStream; import java.net.HttpURLConnection; import java.net.URL; import java.nio.charset.StandardCharsets; import org.springframework.stereotype.Service; @Service("indexNowUtil") public class IndexNowUtil { private static final String INDEXNOW_API_URL = "https://api.indexnow.org/indexnow"; private static final String INDEXNOW_KEY = "d09a9f949e6e48eeb221d7a13bdb1d14"; // πŸ” 여기에 μ‹€μ œ ν‚€ μž…λ ₯ private static final String HOST = "www.munjaon.co.kr"; // πŸ” λ„λ©”μΈλ§Œ μž…λ ₯ (https:// 없이) public static void submitUrl(String urlToSubmit) { try { URL url = new URL(INDEXNOW_API_URL); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("POST"); connection.setRequestProperty("Content-Type", "application/json; utf-8"); connection.setDoOutput(true); // JSON 데이터 ꡬ성 String jsonInputString = "{" + "\"host\":\"" + HOST + "\"," + "\"key\":\"" + INDEXNOW_KEY + "\"," + "\"urlList\":[\"" + urlToSubmit + "\"]" + "}"; try (OutputStream os = connection.getOutputStream()) { byte[] input = jsonInputString.getBytes(StandardCharsets.UTF_8); os.write(input, 0, input.length); } int responseCode = connection.getResponseCode(); if (responseCode == 200 || responseCode == 202) { System.out.println("βœ… IndexNow 전솑 성곡: " + urlToSubmit); } else { System.out.println("❌ 전솑 μ‹€νŒ¨ - 응닡 μ½”λ“œ: " + responseCode + " : " + urlToSubmit); } } catch (Exception e) { System.err.println("🚫 였λ₯˜ λ°œμƒ: " + e.getMessage()); } } /* public static void main(String[] args) { // ν…ŒμŠ€νŠΈμš© URL 전솑 submitUrl("https://yourdomain.com/new-post.html"); // πŸ” 여기에 전솑할 μ‹€μ œ URL μž…λ ₯ } */ }