Send data requests http post. **SOLVED**
-
@scg94
try first on e.g.
https://requestb.increate bin and put url
>>> urlpost.request("POST", "http://requestb.in/1kley5v1", '{"temperatura_rpi":' + str(500)+'}').text 'ok' >>>FORM/POST PARAMETERS None HEADERS Host: requestb.in X-Request-Id: b5ff3790-7279-4a4a-8237-b91ac4f26221 Cf-Ipcountry: PL Cf-Ray: 34d8ea4990e56b01-WAW Via: 1.1 vegur Connection: close Total-Route-Time: 0 Content-Length: 23 Cf-Visitor: {"scheme":"http"} Cf-Connecting-Ip: XXXX Connect-Time: 10 Accept-Encoding: gzip RAW BODY {"temperatura_rpi":500} -
@livius
Brother, I just saw the error more clearly...>>> urequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(500)+'}').text '{"detail": "Unsupported media type \'\' in request."}'What is it????
I did the same as you and this was the result:
>>> urequest.request("POST", "http://requestb.in/1kley5v1", '{"temperatura_rpi":' + str(500)+'}').text 'ok' >>> urequest.request("POST", "http://requestb.in/1kley5v1", '{"temperatura_rpi":500}').text 'ok' -
@scg94
I do not know which media type is supported on your site but
try to add parameterurequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(500)+'}', {"Content-Type": "text/plain"}).text -
@livius Hiiiii,
Yes, that's right, the header is {Content-Type: application / json}. Unfortunately I get error, and this is where everything gets complicated again ...
>>> urequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(500)+'}',{"Content-Type":"application/json"}).text Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/flash/lib/urequest.py", line 67, in request AssertionError: >>> urequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(500)+'}',{"Content-Type : application/json"}).text Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/flash/lib/urequest.py", line 67, in request AssertionError: >>>If you want I can send the token for a message so that you help me to make tests and see the error that I get ...
-
i miss one parameter
try thisurequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(500)+'}', None, {"Content-Type": "text/plain"}).text -
@livius
Hey bro! SOLVED>>> urequest.request("POST","http://50.23.124.68/api/v1.6/devices/raspberry-pi?token=private",'{"temperatura_rpi":'+str(30.67)+'}',None,{"Content-Type" : "application/json"}).text '{"temperatura_rpi": [{"status_code": 201}]}' >>>Thanks a Lot...
-
@danielm Hi, I installed your lib, is there a sample code for HTTPS.Post?
I then want to get the data from my home page server.PHP Server
<?php
//Sensor1$p1 = $_GET["p1"]];
$p2 = $_GET["p2"];
$p3 = $_GET["p3"];$p4 = $_GET["p4"];
$p5 = $_GET["p5"];$p6 = $_GET["p6"];
$p7 = $_GET["p7"];
$p8 = $_GET["p8"];
$p9 = $_GET["p9"];
$p10 = $_GET["p10"];$p11 = $_GET["p11"];
$p12 = $_GET["p12"];
$p13 = $_GET["p13"];
$p14 = $_GET["p14"];
$p15 = $_GET["p15"];$p16 = $_GET["p16"];
$p17 = $_GET["p17"];
$p18 = $_GET["p18"];
$p19 = $_GET["p19"];
$p20 = $_GET["p20"];$content = array($p1, $p2, $p3, $p4, $p5, $p6, $p7, $p8, $p9, $p10, $p11, $p12, $p13, $p14, $p15, $p16, $p17, $p18, $p19, $p20);
// Save the file
$entry = implode(";", $content);
file_put_contents("sensor1.txt", $entry);
?>Translated with www.DeepL.com/Translator
-
@wolli01
Check the test code linked in this post:
https://forum.pycom.io/topic/4099/new-firmware-release-candidate-v1-20-0-rc0/12 -
@danielm I have tried now but unfortunately only empty strings are written in the file, either no data arrive or they are not read correctly. The PHP file will be called in any case.
-
@wolli01 Hier mein Code
import urequests userdata = {"p1": "Wohnzimmer", "p2": "24.12.2018", "p3": "23.97"} url = 'https://Homepage.de/live1.php' res = urequests.post(url, headers={"Content-Type": "application/json", "Accept": "application/json"}, data= str(userdata)) res.close()auf den PHP Server:
<?php
//Sensor1$p1 = $_GET["p1"];
$p2 = $_GET["p2"];
$p3 = $_GET["p3"];$inhalt = array($p1, $p2, $p3);
// Speichern der Datei
$eintrag = implode(";", $inhalt);
file_put_contents("sensor1.txt", $eintrag);
?>
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login