Google Contacts OAuth响应中的JSON对象损坏

Google Contacts OAuth响应中的JSON对象损坏,json,curl,google-oauth,google-contacts-api,chunked-encoding,Json,Curl,Google Oauth,Google Contacts Api,Chunked Encoding,我正在使用OAuth2.0和Google联系人。使用VisualStudioC++实现卷曲效果良好 提出要求,但有时是最近?我返回的JSON对象不是这样的: { "access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc", "token_type" : "Bearer", "expires_in" : 3600, "refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-

我正在使用OAuth2.0和Google联系人。使用VisualStudioC++实现卷曲效果良好 提出要求,但有时是最近?我返回的JSON对象不是这样的:

{
"access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74"
}
{
00000001


00000001

00000001

00000001
"
00000001
a
00000001
c
00000001
c
00000001
e
00000001
s
00000001
s
00000001
_
00000001
t
00000001
o
00000001
k
00000001
e
00000001
n
00000001
"
00000001

00000001
:
000001

7c
"ya29.1.AADtN_VutXzy-bvGQsNaVusm6NZce9kPzbg1gcjwwZza6Utll4UsXGgBSSjkYfM",
  "token_type" : "Bearer",
  "expires_in" : 3600
}    
看起来像这样:

{
"access_token" : "ya29.AHES6ZTtm7SuokEB-RGtbBty9IIlNiP9-eNMMQKtXdMP3sfjL1Fc",
"token_type" : "Bearer",
"expires_in" : 3600,
"refresh_token" : "1/HKSmLFXzqP0leUihZp2xUt3-5wkU7Gmu2Os_eBnzw74"
}
{
00000001


00000001

00000001

00000001
"
00000001
a
00000001
c
00000001
c
00000001
e
00000001
s
00000001
s
00000001
_
00000001
t
00000001
o
00000001
k
00000001
e
00000001
n
00000001
"
00000001

00000001
:
000001

7c
"ya29.1.AADtN_VutXzy-bvGQsNaVusm6NZce9kPzbg1gcjwwZza6Utll4UsXGgBSSjkYfM",
  "token_type" : "Bearer",
  "expires_in" : 3600
}    
这使得提取数据变得困难。有什么想法吗? 这就是我执行卷曲请求的方式:

CURL* curl = curl_easy_init();

struct curl_slist *headers=NULL; 
curl_slist_append(headers, "Content-Type: application/x-www-form-urlencoded; charset: UTF-8");
curl_easy_setopt(curl,CURLOPT_URL,(LPCSTR)requesturl);
if(postfields) {
    curl_easy_setopt(curl,CURLOPT_POST, 1);
    curl_easy_setopt(curl,CURLOPT_POSTFIELDS, postfields);
}
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, CGoogleContacts::function_pt);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &gs_strLastResponse);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER,0);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST,0);
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_HEADER, 1);
CURLcode result = curl_easy_perform(curl);
curl_easy_cleanup(curl); 
return result == CURLE_OK;
谢谢
格雷格·查普曼(Greg Chapman)

好的,我已经计算出这与分块编码有关。所以这很有道理——但是有没有一种方法可以要求回复不要被分块——有时候不是这样的?