JavaScript Hexadezimalwerte in einem http-Request übergeben

Wiskat

Mitglied
Hallo erstmal :)

ich soll eine Daikin Klimasteuerung über einen HTTP-Request ansteuern. Leider bin ich auf dem Gebiet ein totaler Anfänger, dementsprechend komm ich seit Tagen nicht wirklich voran. Angaben wie "application/octet-stream" sind vorgegeben.

Zum Steuern der Anlage muss ich einen Hexadezimalwert, denn ich über ein JavaScript ermittel, versenden. Dieser Hexwert ist 112 Zeichen --> 56 byte groß. Allerdings finde ich keine Möglichkeit die Daten direkt als Byte zu versenden, sodass sie nicht erneut codiert werden. Die Daten werden bisher immer als Ascii-Zeichen versendet, da ich sie ja auch als "string" deklariere, und dementsprechend erneut in Hexwerte codiert. Ist soweit ja auch völlig logisch. Die Frage ist nur, wie ich diese Werte denn direkt als Hexwerte übertragen kann?

Ich hab schon so einiges ausprobiert: "0x" vor jedem Byte, % vor jedem Byte etc. Nichts hat mir wirklich geholfen.


Hier mal die stark vereinfachte Version des Skriptes:
Java:
var value = "3800000010270000010000000000000000000000000000000000000000000000040000000100000000000000000000000000000000000000";
url = "http://172.16.4.220:80/cmd/";
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");   
WinHttpReq.open("POST", url, false);
WinHttpReq.setRequestHeader("Content-length", "56");
WinHttpReq.setRequestHeader("Content-type", "application/octet-stream");
WinHttpReq.send(value);

Kann mir einer von euch vielleicht weiterhelfen?
Danke,
Thomas

PS: Sorry ich seh gerade ich bin im falschen Unterforum :oops:! Ich müsste eigentlich hierhin: Für Verirrte - Fragen zu JavaScript! Vielleicht wäre ein Mod so nett und verschiebt diesen Thread.
 
Zuletzt bearbeitet von einem Moderator:

chalkbag

Bekanntes Mitglied
Nicht genau das was du suchst, aber vielleicht hilft es.

Core JavaScript Reference 1.5:

Java:
var javaString = new java.lang.String("Hello world!");
var byteArray = javaString.getBytes();
byteArray[0] // returns 72
byteArray[1] // returns 101

Was mir noch unklar ist, in welcher Form bekommst die Daten?
 

MarderFahrer

Gesperrter Benutzer
Nur ein Schuss ins blaue.
Java:
	var src = 'data:application/octet-stream;base64,' +
		'MzgwMDAwMDAxMDI3MDAwMDAxMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw' +
		'MDAwMDA0MDAwMDAwMDEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMA==';

Diese dataurl sollte deinem value in base64 encoded entsprechen. Ohne das getestet zu haben sollte der Webserver anhand dieser informationen eigentlich wieder deinen hex Wert decodieren können.
Wenn man jetzt das anstelle der "value" variable versendet... käme auf einen Versuch an.
 

Wiskat

Mitglied
@faetzminator: Also um die Heizungsanlage zu steuern, muss dem Gerät über einen HTTP-Request Hexwerte übergeben werden. Die benötigen Hexwerte errechne ich über einen Skript, sodass ich am Ende einen Hexstring, wie z.B. "380000000027001". Die ersten 2 Byte sind in diesem Fall die CommandID, danach folgen Temperaturwerte, Betriebsstatus usw. Sodass ich letztendlich einen 56Byte langen String erhalte.
Dieser String muss jetzt genau in dieser Form dem Gerät zugesendet werden. Der Hexwert wird aber als normaler ASCII Zeichensatz behandelt und dementsprechend erneut in Hexwerten umgewandelt, sodass das Gerät nichts mehr damit anfangen kann.
Daher meine Frage, wie ich die Werte direkt als Hexwerte übermitteln kann, ohne erneut codiert zu werden.


@MarderFahrer: Klappt leider nicht, Daten werden trotzdem nochmal codiert, sodass sie unbrauchbar werden.


@chalkbag: Ich hab es jetzt Ähnlich versucht. Ich geh einfach hin und übersetze meinen Hexwert eins-zu-eins in einem ASCII-Zeichensatz. Zum Beispiel den ersten Byte "38" ersetze ich durch "8". Beim codieren wird er nun in wieder in 38 im Header angezeigt. Eigentlich total easy, weshalb ich da noch nicht eher drauf gekommen bin :-/

Ein Problem bleibt jedoch bestehen: Wie kann ich als ASCII-Zeichen "NULL" darstellen? Ich hab es versucht indem ich einfach zwei Anführungszeichen sende --> ""
Leider ohne Erfolg, auch mit "unescape" hat es leider nicht funktioniert. Die anderen Werte kann ich alle über die Tastenkombi "ALT" + *** darstellen (z.B. 02h = ALT+002), nur bei "NULL" stellt der dementsprechend auch nichts dar.

Hier mal eine Zeichentabelle: ASCII-Tabelle
 

faetzminator

Gesperrter Benutzer
[c]parseInt(yourNum, 16);[/c] wandelt einen int in einen Hexstring um. Jetzt musst du nur noch Zeichen für Zeichen (ASCII Code) reinschmeissen und du solltest kriegen, was du willst.
 

Wiskat

Mitglied
Hmm ich hab mich vielleicht echt bescheiden ausgedrückt :autsch:

Ich versuch es nochmal zu erklären, sorry:
Ich hab bereits einen Hexadezimalwert! Mein generierter String ist der Hexadezimalwert den ich übermitteln muss! Das Problem ist, dass dieser Hexwert beim HTTP-Request als ASCII-Code behandelt wird und dementsprechend nochmal als Hexadezimalwert codiert wird. Somit ist der Code für das Gerät unbrauchbar.

Variante A:
Ich suche eine Möglichkeit den Wert direkt als Hexadezimalwert zu übergeben, ohne das der HTTP-Request ihn erneut codieren möchte.

--------------
Oder eine andere Möglichkeit ist Variante B mit einem anderen Problem:
Ich wandele meinen vorhandenen Hexadezimalwert in einen ASCII Code um, bevor ich den HTTP Request starte. Ich übergebe dann meinen ASCII Code und beim HTTP Request wird der String dann zurück in einen Hexadezimalwert geschrieben. Somit hätte ich das was ich wollte, nämlich das die Werte als Hexadezimalwerte zum Gerät gelangen.
Allerdings muss ich einige Nullzeichen übermitteln, die sich in meinem String befinden, aber ich bekomme das Nullzeichen einfach nicht übermittelt...
Ich hab es schon mit \0 ausprobiert --> value = '\0'.
Problem ist das der ASCII-Zeichensatz \ ebenfalls beinhaltet und somit bei Zeichen \ und 0 in 5c und 30 codiert.. Schreibe ich es ohne Anführungszeichen value = \0 wird das Script erst gar nicht ausgeführt. Oder gibt es da noch einen anderen Trick?

Mit "unescape" o.Ä. habe ich es auch schon versucht. Alles ohne Erfolg. Bei allen Werten ist das kein Problem nur "null" stellt er nicht entsprechend da.

Ich überwache mit Wireshark meine NW-Karte.
Schreibe ich z.B.:
var value = String.fromCharCode(0);
(...)
WinHttpReq.send("8" + value);

Zeigt er mir zuerst noch die 8 als "38" an, was ja korrekt ist. Aber darauf folgt nicht mehr, aber es sollte ja noch die "00" folgen.

Ich hoffe ihr könnt mein Problem nachvollziehen und mir vielleicht weiterhelfen, auch wenn ich es schwer beschreiben kann :(
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M fetch - API - Probleme? JavaScript Angular, React, JQuery - Fragen zu JavaScript 3
M JavaScript - Fetch Probleme Angular, React, JQuery - Fragen zu JavaScript 0
M Fetch Probleme - JavaScript? Angular, React, JQuery - Fragen zu JavaScript 1
M JavaScript Hilfe dringend (v.2) Angular, React, JQuery - Fragen zu JavaScript 1
P Cypress Test mit javascript ergibt [object Undefined] Meldung Angular, React, JQuery - Fragen zu JavaScript 0
F Javascript Problem bei mehrere ID's Angular, React, JQuery - Fragen zu JavaScript 7
B JavaScript - Array mit Objekten anhand des Object-keys sortieren Angular, React, JQuery - Fragen zu JavaScript 2
I JavaScript: Array umgekehrt von vorn auffüllen Angular, React, JQuery - Fragen zu JavaScript 7
B Kommunikation zwischen Javascript und Java? Angular, React, JQuery - Fragen zu JavaScript 7
A Problem bei Sortierung von Rechnungsnummern mit JavaScript Angular, React, JQuery - Fragen zu JavaScript 1
B Besseres Arbeitsmanagement bei Javascript Programm? Angular, React, JQuery - Fragen zu JavaScript 19
I Fehler im JavaScript? Angular, React, JQuery - Fragen zu JavaScript 2
B Rich Text Editor With Javascript Angular, React, JQuery - Fragen zu JavaScript 1
B nodeJS JavaScript Object require Angular, React, JQuery - Fragen zu JavaScript 12
Aartiyadav Annotation in Javascript and Typescript Angular, React, JQuery - Fragen zu JavaScript 2
B Javascript Tutorial für DOM Manipulationen? Angular, React, JQuery - Fragen zu JavaScript 0
Q Mit JavaScript Daten aus einer Textdatei verarbeiten Angular, React, JQuery - Fragen zu JavaScript 2
H RegExp in Javascript String Angular, React, JQuery - Fragen zu JavaScript 1
B php Datei in JavaScript öffnen Angular, React, JQuery - Fragen zu JavaScript 9
M Einkaufswagen JavaScript Angular, React, JQuery - Fragen zu JavaScript 4
Zeppi Javascript JSON in ein Array Angular, React, JQuery - Fragen zu JavaScript 1
Cellsplitter Api auslesen und in Json Datei speichen - Javascript (node js) Angular, React, JQuery - Fragen zu JavaScript 10
B DOM Baum in JavaScript document.body.childNodes[1] Angular, React, JQuery - Fragen zu JavaScript 10
Noahscript [Frage]: Wie erstelle ich eine htmlspecialchars_decode mit JavaScript? Angular, React, JQuery - Fragen zu JavaScript 1
A Javascript validateInput Angular, React, JQuery - Fragen zu JavaScript 0
Zeppi Javascript URL als Link Angular, React, JQuery - Fragen zu JavaScript 2
T Javascript x-Axis fortlaufendes Datum eintragen Angular, React, JQuery - Fragen zu JavaScript 0
P Editor- mit javascript Sonderzeichen beim schreiben vorschlagen Angular, React, JQuery - Fragen zu JavaScript 0
Jose Merchan JavaScript and SEO Angular, React, JQuery - Fragen zu JavaScript 0
B JavaScript Button hinzufügen Angular, React, JQuery - Fragen zu JavaScript 2
A Ich habe eine frage zu JavaScript adblock detector? Wenn jemand auf OK Klick soll die Sete neu geladen werden Angular, React, JQuery - Fragen zu JavaScript 1
d.lumpi in javascript input erstellen Angular, React, JQuery - Fragen zu JavaScript 4
Martob282 Belegnummerierungsstempel mit JavaScript erstellen Angular, React, JQuery - Fragen zu JavaScript 34
N Javascript: mehrere Textfelder prüfen ob es sich um eine Zahl handelt und diese zwischen 1 und 49 liegt Angular, React, JQuery - Fragen zu JavaScript 10
S Javascript Canvas RadialGradient -> SVG Gradient Angular, React, JQuery - Fragen zu JavaScript 0
C JavaScript in Siri-Shortcuts zur Webseiten Bedienung Angular, React, JQuery - Fragen zu JavaScript 8
N TypeScript zu JavaScript Angular, React, JQuery - Fragen zu JavaScript 1
M Taste mit Javascript simulieren Angular, React, JQuery - Fragen zu JavaScript 6
B Rauch per Javascript auf Bild packen? Angular, React, JQuery - Fragen zu JavaScript 4
X Ohm Rechner in JavaScript aber was bedeutet Power? Angular, React, JQuery - Fragen zu JavaScript 103
ruutaiokwu JavaScript in Angular 8-Anwendung verwenden Angular, React, JQuery - Fragen zu JavaScript 11
T Ich möchte einen Button mit JavaScript ausblenden Angular, React, JQuery - Fragen zu JavaScript 5
J Html Button mit JavaScript ausführen Angular, React, JQuery - Fragen zu JavaScript 5
L [JavaScript] Mehrere Variablen für Live-Suche in MySql-DB Angular, React, JQuery - Fragen zu JavaScript 0
D Java Tool um HTML und Javascript zu analysieren Angular, React, JQuery - Fragen zu JavaScript 3
P Hashes in JavaScript Angular, React, JQuery - Fragen zu JavaScript 7
P Zahlen in JavaScript Angular, React, JQuery - Fragen zu JavaScript 3
M Spalte verlinken mit JavaScript Angular, React, JQuery - Fragen zu JavaScript 9
P Angular vor JavaScript lernen? Angular, React, JQuery - Fragen zu JavaScript 1
S Unterstützung in Javascript Angular, React, JQuery - Fragen zu JavaScript 2
W Javascript + couchDB Angular, React, JQuery - Fragen zu JavaScript 2
T Grafische und tabellarische Datendarstellung mit JavaScript Angular, React, JQuery - Fragen zu JavaScript 2
E Javascript wenn Variable aktualisiert wird, dann prüfe Angular, React, JQuery - Fragen zu JavaScript 0
D Javascript um eine Seite in einem PDF Formular ein-/Ausblenden zu lassen Angular, React, JQuery - Fragen zu JavaScript 3
ARadauer JavaScript und replace... Angular, React, JQuery - Fragen zu JavaScript 1
P Richtiges Auslesen von mehreren Daten im JSON Format via JavaScript Angular, React, JQuery - Fragen zu JavaScript 2
n00b4u JavaScript Daten lokal Speichern Angular, React, JQuery - Fragen zu JavaScript 7
C per Javascript auf S4 nach Sensordaten fragen? Angular, React, JQuery - Fragen zu JavaScript 2
B Fehler im JavaScript Angular, React, JQuery - Fragen zu JavaScript 3
C In Wordpress unter Custom-Js mit Javascript den ursprünglichen Code deaktivieren Angular, React, JQuery - Fragen zu JavaScript 0
K Javascript "Bild mit Pfeiltasten automatisch bewegen" HILFE Angular, React, JQuery - Fragen zu JavaScript 0
M Javascript Höhe Angular, React, JQuery - Fragen zu JavaScript 2
N Problem - Google Analytics Tracking Javascript Datei von eigenen Server laden Angular, React, JQuery - Fragen zu JavaScript 1
C Javascript Image.getRGB(x,y) Angular, React, JQuery - Fragen zu JavaScript 1
K Proxy PAC File Javascript Angular, React, JQuery - Fragen zu JavaScript 2
F Von JavaScript "Spaghetticode" zu Backbone.js Angular, React, JQuery - Fragen zu JavaScript 0
H Javascript für wordpress "open new window" Angular, React, JQuery - Fragen zu JavaScript 1
F JavaScript replace funktion Angular, React, JQuery - Fragen zu JavaScript 1
T JavaScript Variable in Klasse ändern Angular, React, JQuery - Fragen zu JavaScript 2
N JavaScript für Touch Devices bei DropDown Menü Angular, React, JQuery - Fragen zu JavaScript 4
T Javascript - Polygon, wieviel % sind gefüllt Angular, React, JQuery - Fragen zu JavaScript 1
K JavaScript Banner Syntax Error Angular, React, JQuery - Fragen zu JavaScript 4
D JavaScript jTable Angular, React, JQuery - Fragen zu JavaScript 2
Fab1 [SUCHE] JavaScript Buch für Umsteiger Angular, React, JQuery - Fragen zu JavaScript 4
T html code per javascript einfügen Angular, React, JQuery - Fragen zu JavaScript 7
nrg RegExp Split \r\n in Javascript Angular, React, JQuery - Fragen zu JavaScript 5
J JavaScript und "import"? Angular, React, JQuery - Fragen zu JavaScript 10
B [Javascript] bytearray to file Angular, React, JQuery - Fragen zu JavaScript 2
L Javascript Maus Funktion Angular, React, JQuery - Fragen zu JavaScript 4
K JavaScript Kontaktformulare Angular, React, JQuery - Fragen zu JavaScript 2
B Javascript popup Angular, React, JQuery - Fragen zu JavaScript 5
D Sontag ? JavaScript fehler ? Angular, React, JQuery - Fragen zu JavaScript 12
L JavaScript for-Schleife Angular, React, JQuery - Fragen zu JavaScript 5
D Nachladen von JavaScript Angular, React, JQuery - Fragen zu JavaScript 7
F JSON Datei in JavaScript einbinden Angular, React, JQuery - Fragen zu JavaScript 1
F Node.js und JavaScript Angular, React, JQuery - Fragen zu JavaScript 3
Chris81T Java <> DWR <> JavaScript/HTML Angular, React, JQuery - Fragen zu JavaScript 2
F Hilfe Button mit Javascript Angular, React, JQuery - Fragen zu JavaScript 2
F Dropdownmenü für JavaScript Angular, React, JQuery - Fragen zu JavaScript 5
F [S] Hilfe beim JavaScript auf Homepage Angular, React, JQuery - Fragen zu JavaScript 4
M JavaScript Objekt .play .reload? Angular, React, JQuery - Fragen zu JavaScript 10
N warum kann ich kein javascript und css in mein html script einbinden Angular, React, JQuery - Fragen zu JavaScript 3
Gossi Frage zu Html (evtl. auch JavaScript?) Angular, React, JQuery - Fragen zu JavaScript 10
L JavaScript Array Angular, React, JQuery - Fragen zu JavaScript 4
C JavaScript: Adresszeile aulesen wenn, dann Angular, React, JQuery - Fragen zu JavaScript 6
C Daten von Java an Javascript übergeben möglich? Angular, React, JQuery - Fragen zu JavaScript 5
K JavaScript tooltip-Frage Angular, React, JQuery - Fragen zu JavaScript 8
P Javascript auf Website aufrufen Angular, React, JQuery - Fragen zu JavaScript 5
P Javascript geht nur offline im safari - online läuft es nicht!? Angular, React, JQuery - Fragen zu JavaScript 3
H JavaScript-Umsetzung Angular, React, JQuery - Fragen zu JavaScript 3

Ähnliche Java Themen

Neue Themen


Oben