Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# Windows Forms

Войти
Регистрация
Восстановить пароль
 
Ehzik
0 / 0 / 0
Регистрация: 05.11.2015
Сообщений: 5
#1

Отправка Post запрос с несколькими параметрами - C#

13.03.2016, 21:00. Просмотров 450. Ответов 1

Ребят, объясните и подскажите, как можно написать пост запрос для отправки на сервер один данных. Немного подробнее о том что отправлять: отправлять два значения с промежутком примерно 5 секунд. Значения числовые, могут быть с плавающей запятой, ну к примеру это могут быть значения датчиком: 36,9 и 30,2. Отправлять нужно на сервер где есть проверка ключа(например ключ может быть таким:11a32def-4288-4a90-b008-604de3bde948). Можно с пояснениями? Пожалуйста!!!

Добавлено через 49 минут
Вот еще код отправляемых данных, только как его на шарп преобразовать хз...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
#include <HTU21D.h> 
#include "DHT.h" 
 
#include <Wire.h> 
 
 
#include <SPI.h> 
#include <Ethernet.h> 
 
//How many values you will be pushing to ThingWorx 
#define propertyCount 2 
#define DHTPIN 5 //number of pin me use 
#define DHTTYPE DHT22 //type sensor 
// Enter a MAC address and IP address for your controller below. 
// The IP address will be dependent on your local network: 
 
byte mac[] = {0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED}; 
 
char server[] = "name servers"; 
 
EthernetClient client; 
 
//ThingWorx App key which replaces login credentials) 
char appKey[] = "11a32def-4288-4a90-b008-604de3bde948"; 
// ThingWorx Thing name for which you want to set properties values 
char thingName[] = "HTU21DThing"; 
//Interval of time at which you want the properties values to be sent to TWX server 
int timeBetweenRefresh = 5000; 
// ThingWorx service that will set values for the properties you need 
// See the documentation for this tutorial for more information 
char serviceName[] = "setTempAndHumid"; 
 
//Initialize Properties Names and Values Arrays 
char* propertyNames[] = {"Temp", "Humid"}; 
double propertyValues[propertyCount]; 
 
// last time you connected to the server, in milliseconds 
unsigned long lastConnectionTime = 0; 
// state of the connection last time through the main loop 
boolean lastConnected = false; 
 
//Initialize an HTU21D library object to read 
// temperature and humidity data from your connected sensor 
//HTU21D myHumidity; 
DHT dht(DHTPIN, DHTTYPE); 
void setup() { 
//shut down the SD Card pins 
pinMode(5,OUTPUT); 
digitalWrite(5,HIGH); 
 
// start serial port: 
dht.begin(); 
Serial.begin(9600); 
while (!Serial) { 
; // wait for serial port to connect. Needed for Leonardo only 
} 
//initialize HTU21D object to read values from sensors 
// myHumidity.begin(); 
// start the Ethernet connection: 
Serial.println("Trying to get an IP address using DHCP"); 
Ethernet.begin(mac); 
Serial.print("My IP address: "); 
Serial.print(Ethernet.localIP()); 
Serial.println(); 
} 
 
void loop() { 
 
// Reading temperature or humidity takes about 250 milliseconds! 
// Sensor readings may also be up to 2 seconds 'old' (its a very slow sensor) 
/* float h = dht.readHumidity(); 
// Read temperature as Celsius (the default) 
float t = dht.readTemperature(); 
// Read temperature as Fahrenheit (isFahrenheit = true) 
float f = dht.readTemperature(true);*/ 
 
 
// Aquire sensor values 
/* propertyValues[0] = myHumidity.readTemperature(); 
propertyValues[1] = myHumidity.readHumidity();/*/ 
propertyValues[1] =77;//dht.readHumidity(); 
propertyValues[0] =45;//dht.readTemperature(); 
 
// wait the established interval of time before 
// reading values from the sensor 
// and sending them to the TWX server again 
// delay(timeBetweenRefresh); 
if (millis() - lastConnectionTime > timeBetweenRefresh) { 
updateValues(propertyValues, client, server, appKey, thingName, serviceName, propertyNames); 
} 
} 
 
void updateValues(double values[] , EthernetClient &client, char server[], char appKey[], char thingName[], char serviceName[], char* sensorNames[]) 
{ 
//build the String with the data that you will send 
//through REST calls to your TWX server 
char data[80]; 
strcpy(data, "?appKey="); 
strcat(data, appKey); 
strcat(data, "&method=post&x-thingworx-session=true"); 
// if you get a connection, report back via serial: 
if (client.connect(server, 80)) { 
Serial.println("connected"); 
// send the HTTP POST request: 
client.print("POST /Thingworx/Things/"); 
client.print(thingName); 
client.print("/Services/"); 
client.print(serviceName); 
client.print(data); 
client.print("<"); 
for (int idx = 0; idx < propertyCount; idx++) 
{ 
client.print("&"); 
client.print(propertyNames[idx]); 
client.print("="); 
client.print(propertyValues[idx]); 
} 
client.print(">"); 
client.println(" HTTP/1.1");    
client.print("Host: "); 
client.println(server); 
client.println("Content-Type: text/html"); 
client.println(); 
 
client.stop(); 
lastConnectionTime = millis(); 
 
// print the request out 
Serial.print("POST /Thingworx/Things/"); 
Serial.print(thingName); 
Serial.print("/Services/"); 
Serial.print(serviceName); 
Serial.print(data); 
Serial.print("<"); 
for (int idx = 0; idx < propertyCount; idx++) 
{ 
Serial.print("&"); 
Serial.print(propertyNames[idx]); 
Serial.print("="); 
Serial.print(propertyValues[idx]); 
} 
Serial.print(">"); 
Serial.println(" HTTP/1.1"); 
Serial.print("Host: "); 
Serial.println(server); 
Serial.println("Content-Type: text/html"); 
Serial.println(); 
 
 
} 
else { 
// kf you didn't get a connection to the server: 
Serial.println("the connection could not be established"); 
client.stop(); 
} 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2016, 21:00
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Отправка Post запрос с несколькими параметрами (C#):

Выполнение нескольких потоков. Каждый из них запускается с несколькими параметрами - C#
Привет всем Помогите пожалуйста. Есть программа в ней поле Потоки. Ввожу допустим 100(значит создать 100 потоков) как создать 100...

Отправка POST запроса - C#
Прошу помощи, срочно !!! Нужно отправить POST запрос сайту, но POST запрос состоит в виде JSON. Ниже скриншот, что я поймал через сниффер....

Отправка post-запроса С# - C#
Доброго времени суток всем! Пытаюсь отправить пост-запрос на сайт. По идее в ответ должно придти что-то осмысленное, но приходить...

WebBrowser post отправка данных - C#
Всем привет , я уже делал отправку данных средствами webbrowser но раньше она выглядела так Исходный код...

Отправка Post запроса (игра vk) - C#
Подскажет кто где найти метод шифрования данных в игре Вконтакте дота 2: пудж а то пост запрос при нажатии любой кнопки отправляется у них...

.NET 4.x Отправка Сокета методом POST - C#
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

1
EvilFromHell
944 / 843 / 267
Регистрация: 26.04.2012
Сообщений: 2,648
13.03.2016, 21:10 #2
Ehzik, тема миллион раз обсуждалась, используй поиск. Мой пример вот.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.03.2016, 21:10
Привет! Вот еще темы с ответами:

Post FILE отправка файла - C#
Image img = Image.FromFile(&quot;1.jpg&quot;); string post = MultipartContentFormatter.MakeString(&quot;from=&quot; + youremail.Text + &quot;&amp;realname=&quot; +...

Отправка xml файла методом POST - C#
В классе XmlWriter создаётся файл. using (var xmlwrite = XmlWriter.Create( &quot;send.xml&quot;, ...

Отправка POST запроса и получение куки - C#
Стоит задача залогиниться на сайте https://lk2.service.nalog.ru/lk/index.html, используя метод POST (функция ниже), однако в ответ получаю...

Отправка POST запроса и получение ответа - C#
Есть проблема. Нужно отправить на сайт POST запрос и в зависимости от этого запроса сайт выдает ответ(обычный echo). Нужно отправить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru