0

에 자바를 사용하는이 내 HTTP URL을json 요청으로 java.net url을 가져와야합니다. 내가 구글에서 appengine

내가 그룹을 만들 디렉토리 API를 사용하고
POST HTTPS://www.googleapis.com/admin/directory/v1/group 
MY json request 
{ 
    "email": "[email protected]", 
    "name": "Sales Group", 
    "description": "This is the Sales group." 
} 

것을 호출 할 수있는 방법을 가르쳐주세요.

URL 페치를 사용하지 않아서 익숙하지 않습니다. 어떻게 도와 드릴까요?

나는 2 시간 후에 내 질문에 대한 답변입니다. stackoverflow 내가 10 시간 미만 명성을 가지고 이후 8 시간 전에 내 자신의 질문에 대답을 허용하지 않았다, 그래서 긴 질문에 용서해. 나는 이것을 시험해 보았다. json을 매개 변수로 전달하는 데 어려움을 겪고 있었다. 여기에 내 코드

import java.io.IOException; 

import java.io.OutputStreamWriter; 
import java.net.HttpURLConnection; 
import java.net.URL; 
import java.util.logging.Logger; 

import javax.servlet.http.*; 

import com.google.appengine.labs.repackaged.org.json.JSONException; 
import com.google.appengine.labs.repackaged.org.json.JSONObject; 

@SuppressWarnings("serial") 
public class DirectoryApiExampleServlet extends HttpServlet { 
     static Logger log = gger.getLogger(DirectoryApiExampleServlet.class.getName()); 
public void doGet(HttpServletRequest req, HttpServletResponse resp) 
     throws IOException { 
    URL url = new URL("https://www.googleapis.com/admin/directory/v1/groups"); 
    HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
    connection.setDoOutput(true); 
    connection.setRequestMethod("POST"); 
    connection.setRequestProperty("Content-Type", "application/json"); 
    connection.setRequestProperty("Accept", "application/json"); 
    OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream()); 
    JSONObject json = new JSONObject(); 
    try { 
     json.put("email", "[email protected]"); 
     json.put("name", "Test Group"); 
     json.put("description", "this is a test group"); 
    } catch (JSONException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
    writer.write(json.toString()); 
    writer.flush(); 
    writer.close(); 
    log.info("connection.getResponseCode()"+connection.getResponseCode());   
} 

}

입니다 그러나 그것은 예상되지 않은 401 응답을주고있다.

어디에서 실수합니까?

답변

1

POST 요청을하는 방법에 대한 설명서가 있습니다. 예제도 제공됩니다. https://developers.google.com/appengine/docs/java/urlfetch/usingjavanet#Using_HttpURLConnection

+0

내가 내 질문에 대답을 다음 섹션을 확인하세요. – Bharathi

+0

401은 귀하가 승인되지 않았기 때문에 발생합니다. API를 호출하기 전에 해당 작업을 실행할 수있는 올바른 자격 증명으로 로그인해야합니다. 특정 API에 대한 설명서를 참조하십시오. – Romin

0

당신은 액세스 토큰과

인증 인증 헤더를 추가해야합니다 : 자신이 그것을 읽어 보시기 바랍니다 무기명 ya29.vQE48oltidkR

관련 문제