2014-05-24 2 views
1

Google+의 앱 순간을 게시하려고합니다. 앱이 인증 프로세스를 성공적으로 완료하고 액세스 토큰을받습니다. 나는 "https://www.googleapis.com/plus/v1/people/me/moments/vault"에 Moment.Insert API를 호출 할 때 문제가 발생, 항상이 지정되지 않은 오류 메시지가 나는 사람이 여기 https://developers.google.com/+/api/latest/moments/insert 나열되어 다음과 같은거야Google+ 순간 : AddActivity 일반 오류 삽입

{ 
"error": { 
    "errors": [ 
    { 
    "domain": "global", 
    "reason": "invalid", 
    "message": "Invalid Value" 
    } 
    ], 
    "code": 400, 
    "message": "Invalid Value" 
} 
} 

이 API 단계를 반환하고 요청은 다음과 같습니다

{ 
"target": { 
    "kind": "plus#itemScope", 
    "name": "Sample Test for Google Plus REST API", 
    "id": "88370F18-81A4-47F5-BC2F-19EDBE326A20", 
    "url": "http://schema.org/Thing" 
}, 
"type": "http://schemas.google.com/AddActivity", 
"kind": "plus#moment" 
} 

또한 요청 헤더 & 매개 변수로 URL에 API 키에 액세스 토큰을 추가 할 수 있습니다.

여기에 뭔가 빠졌는지 모르겠지만 Google Dev에서 API 탐색기를 사용할 때 정확히 동일한 오류 메시지가 나타날 수 있습니다. 콘솔.

미리 감사드립니다. 어떤 통찰력이라도 미리 감사드립니다.

+0

동일한 문제가 있습니다. 해결책은 무엇입니까? – zish

+0

저와 함께 작업 한 코드 버전을 게시했습니다. 그것이 당신을 도울 수 있기를 바랍니다. – Mohammed

+0

답장을 보내 주셔서 감사합니다. 무단 오류가 발생했습니다. 나는 내 코드를 Answers에 게시하고 있으며, 주석에 전체 코드를 게시 할 수는 없습니다. 너무 커. 전체 코드를 게시 할 수 있습니까? 나는 너의 도움에 감사 할 것이다. thanks – zish

답변

1

이것은 나를 위해 일한 순간 선언입니다. 어떤 이유로 인해 설명 필드가 필요하며이를 추가하지 않으면이 이상한 오류 메시지가 나타납니다.

var client = new RestClient(); 

var moment = new 
{ 
    kind = "plus#moment", 
    type = "https://schemas.google.com/AddActivity", 
    target = new 
    { 
     kind = "plus#itemScope", 
     id = "GENERATE-A-POST-ID-HERE", 
     type = "https://schemas.google.com/AddActivity", 
     name = "SOMTHING-TO-POST", 
     description = "SOMTHING-TO-POST" 
    } 
}; 

var request = new RestRequest(string.Format("{0}?key={1}", GOOGLE_POST_URL, GOOGLE_APP_ID), Method.POST); 

request.AddHeader("authorization", "BEARER-ACCESS-TOKEN-RECEIVED-BEFORE"); 
request.AddBody(moment); 

client.ExecuteAsync(request, OnPostCompleted); 

저는 RestSharp 라이브러리를 사용하여 REST 작업을 처리하고 있습니다.

희망이 도움이 될 것입니다.

+0

많은 감사. 그것은 나를 위해 일했다! – zish