本文整理汇总了C++中HTTPClient::POST方法的典型用法代码示例。如果您正苦于以下问题:C++ HTTPClient::POST方法的具体用法?C++ HTTPClient::POST怎么用?C++ HTTPClient::POST使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类HTTPClient
的用法示例。
在下文中一共展示了HTTPClient::POST方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: submitData
void ArduRPC_SensorNode::submitData()
{
uint16_t i;
char hostname[NODE_EEPROM_API_HOSTNAME_MAX_LENGTH + 1];
uint16_t port;
if(this->status != 4) {
return;
}
if(WiFi.status() != WL_CONNECTED) {
return;
}
/*
if(connectSensorAPI() == false) {
return;
}
*/
getAPIHostnameOrDefault(&hostname[0], NODE_EEPROM_API_HOSTNAME_MAX_LENGTH);
port = getAPIPortOrDefault();
HTTPClient http;
String path;
path.reserve(64);
path = "/sensors/";
path += this->sensor_uuid;
http.begin(hostname, port, path);
http.addHeader("X-Sensor-Api-Key", this->sensor_key);
http.addHeader("X-Sensor-Version", "1");
int code;
code = http.POST(this->cache.data, this->cache.length);
NODE_DEBUG_PRINT("Code ");
NODE_DEBUG_PRINTLN(code);
// ToDo: validate code
this->status = 0;
/*
client.print("POST /sensors/");
client.println(this->sensor_uuid);
client.print("Host: ");
client.println(hostname);
client.println("Connection: close");
client.print("X-Sensor-Api-Key: ");
client.println(this->sensor_key);
client.println("X-Sensor-Version: 1");
client.print("Content-Length: ");
client.println(this->cache.length);
client.println();
for(i = 0; i < this->cache.length; i++) {
Serial.print((char)this->cache.data[i]);
}
this->status = 0;
client.stop();
*/
}
示例2: SendThingSpeakValues
void ICACHE_FLASH_ATTR ThingSpeakClass::SendThingSpeakValues()
{
// if (ThingEnabled) DebugPrintln("thingspeak enabled"); else DebugPrintln("thingspeak disabled");
if (ThingEnabled == false) return;
if (thingSpeakURL == "") return;
DebugPrintln(thingSpeakURL);
if (WiFi.status() != WL_CONNECTED) return; //check to make sure we are connected...
String postStr = "api_key=" + thingWriteKey;
if (HMGlobal.hmPitTemp != "U") postStr += "&field1=" + HMGlobal.hmPitTemp;
if (HMGlobal.hmFood1 != "U") postStr += "&field2=" + HMGlobal.hmFood1;
if (HMGlobal.hmFood2 != "U") postStr += "&field3=" + HMGlobal.hmFood2;
if (HMGlobal.hmAmbient != "U") postStr += "&field4=" + HMGlobal.hmAmbient;
if (HMGlobal.hmFanMovAvg != "U") postStr += "&field5=" + HMGlobal.hmFanMovAvg;
if (HMGlobal.hmFan != "U") postStr += "&field6=" + HMGlobal.hmFan;
if (HMGlobal.hmSetPoint != "U") postStr += "&field7=" + HMGlobal.hmSetPoint;
if (HMGlobal.hmLidOpenCountdown != "U") postStr += "&field8=" + HMGlobal.hmLidOpenCountdown;
if (inAlarm) //if alarm was triggered we send on next msg
{
postStr += "&status=" + MyWebServer.urlencode(MyWebServer.CurTimeString() + " " + AlarmInfo);
AlarmInfo = "";
inAlarm = false;
}
HTTPClient http;
DebugPrintln("http://" + thingSpeakURL + "/update");
http.begin("http://" + thingSpeakURL + "/update");
int httpCode = http.POST(postStr);
// httpCode will be negative on error
if (httpCode > 0) {
if (httpCode == HTTP_CODE_OK) {
}
}
else {
DebugPrintln("[HTTP] POST... failed, error: " + http.errorToString(httpCode));
}
http.end();
DebugPrintln("sending thingspeak stuffs");
}
示例3: loop
void loop() {
String url = "http://things.ubidots.com/api/v1.6/variables/" ID_VARIABLE "/values";
http.begin(url);
http.addHeader("Content-Type", "application/json");
http.addHeader("X-Auth-Token", AUTH_TOKEN);
int content_length =0;
String payload = String("{ \"value\": " + String(millis()/1000) + "}");
//content_length = payload.length();
//http.addHeader("Content-Length", String(content_length));
int httpCode = http.POST(payload);
if(httpCode > 0) {
String payload = http.getString();
Serial.println(payload);
}
else {
Serial.print("[HTTP] failed, error: ");Serial.println(http.errorToString(httpCode).c_str());
}
http.end();
delay(20000);
}