firebase auth rest api 没有返回 arduino 中的全身响应 ide
firebase auth rest api not returning the full body response in arduino ide
我在arduino ide中遇到了firebase auth rest api的问题,下面的代码returns代码200
String url = "https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=" + String(apiKey);
http.setTimeout(5000);
http.begin(url);
http.addHeader("Content-Type", "application/json");
String dataSent = "{\"email\":\"" + String(email) + "\",\"password\":\"" + String(pswd) + "\",\"returSecureToken\":\"true\"}";
int status = http.POST(dataSent);
Serial.println(status);
if (status <= 0)
{
Serial.printf("HTTP error: %s\n",
http.errorToString(status).c_str());
return false;
}
// Read the response.
String payload = http.getString();
Serial.println(payload);
但是当我查看串行监视器时,响应如下所示:
{
kind: "the kind of response",
localId: "someId",
email: "myEmail",
displayName: "myDisplayName",
idToken: "someIdToken",
registered: "someBoolean",
}
显然没问题,但是当我在邮递员中尝试相同的 http 请求时,响应还包括 refreshToken
和 expiresIn
经过更多调查,我发现来自邮递员的 localId
大约有 980 个字符,而来自我的 arduino 代码的 localId
只有大约 680
我正在尝试(但失败了)使用 localId 对 firestore 的请求进行身份验证 api,我认为这种长度差异一直困扰着我。
这真的是问题所在吗?
method: "POST",
body: JSON.stringify({
email: enteredEmail,
password: enteredPassword,
returnSecureToken: true,
}),
headers: {
"Content-Type": "application/json",
},
})
注意: 确保 {returnSecureToken: true} 是您请求正文的一部分
我在arduino ide中遇到了firebase auth rest api的问题,下面的代码returns代码200
String url = "https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword?key=" + String(apiKey);
http.setTimeout(5000);
http.begin(url);
http.addHeader("Content-Type", "application/json");
String dataSent = "{\"email\":\"" + String(email) + "\",\"password\":\"" + String(pswd) + "\",\"returSecureToken\":\"true\"}";
int status = http.POST(dataSent);
Serial.println(status);
if (status <= 0)
{
Serial.printf("HTTP error: %s\n",
http.errorToString(status).c_str());
return false;
}
// Read the response.
String payload = http.getString();
Serial.println(payload);
但是当我查看串行监视器时,响应如下所示:
{
kind: "the kind of response",
localId: "someId",
email: "myEmail",
displayName: "myDisplayName",
idToken: "someIdToken",
registered: "someBoolean",
}
显然没问题,但是当我在邮递员中尝试相同的 http 请求时,响应还包括 refreshToken
和 expiresIn
经过更多调查,我发现来自邮递员的 localId
大约有 980 个字符,而来自我的 arduino 代码的 localId
只有大约 680
我正在尝试(但失败了)使用 localId 对 firestore 的请求进行身份验证 api,我认为这种长度差异一直困扰着我。 这真的是问题所在吗?
method: "POST",
body: JSON.stringify({
email: enteredEmail,
password: enteredPassword,
returnSecureToken: true,
}),
headers: {
"Content-Type": "application/json",
},
})
注意: 确保 {returnSecureToken: true} 是您请求正文的一部分