AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Problem bei FileUpload to Azure - debugger funzt - code nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Problem bei FileUpload to Azure - debugger funzt - code nicht

Ein Thema von schorsch666 · begonnen am 20. Okt 2022 · letzter Beitrag vom 1. Nov 2022
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#1

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 10:27
ist bestimmt nur ne kleinigkeit..
Den solltest du dir patentieren lassen

OK, zeig doch bitte mal den kompletten Code (ggf. mit obfuskierten Inhalten). Nur die kurzen Auszüge machen das Verstehen unnötig schwer.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
schorsch666

Registriert seit: 21. Apr 2011
81 Beiträge
 
#2

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 10:47
Moin und hmmm... - was meinst du denn mit "kompletten code"?
eigentlich lade ich nur die datei in einen stringstream (GVstream), setze die params (versch. versionen) und execute.

RESTRequest.Params.Clear;
RESTRequest.Params.AddItem('x-ms-blob-type','BlockBlob',TRESTRequestParameterKind.pkHTTP HEADER,[poDoNotEncode]);
RESTRequest.Params.AddItem('Content-Length',Length(GVstream.DataString).ToString,TREST RequestParameterKind.pkHTTPHEADER,[poDoNotEncode]);

// RESTRequest.Params.AddItem('bodyF9DD68B493F6415697 EA48A0D8B2214B',GVstream.DataString,TRESTRequestPa rameterKind.pkREQUESTBODY,[poDoNotEncode]);
// RESTRequest.Params.AddBody(GVstream.DataString);
// RESTRequest.Params.AddBody(GVstream.DataString,TRe stContentType.TEXT_HTML);
RESTRequest.Params.AddBody(GVstream.DataString,TRe stContentType.ctAPPLICATION_JSON);

RESTRequest.Execute;
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#3

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 11:57
Warum verwendest du RESTRequest.Params anstatt der Addxxx-Methoden in TRESTRequest? Dann könntest du z.B. direkt AddFile verwenden.

Andererseits kann ich aus dem Code-Part nicht erkennen, wie die Daten auf dem Server ausgewertet werden. So wäre eine Beschreibung wichtig, woran der Server erkennt, dass es eine neue Datei sein soll und wann ein Update.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
schorsch666

Registriert seit: 21. Apr 2011
81 Beiträge
 
#4

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 14:14
erstmal Danke. Die .add-methoden werde ich nochmal testen.

problem ist halt, dass wir keinen grossen einfluss bzw. zugriffsrechte auf deren cloud haben. also habe ich jetzt erstmal einen link bekommen, um zu testen, welche files ueberhaupt im "directory", von wann, etc. sind, damit ich "die" nicht dauernd nerven muss (kommt halt im xml-format).

also, ich versuche das mal morgen und winke ggf. wieder hektsich

tks, de schorsch..
  Mit Zitat antworten Zitat
schorsch666

Registriert seit: 21. Apr 2011
81 Beiträge
 
#5

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 14:42
ich nochmal,
"addFile" will aber einen dateinamen haben - und den brauche ich doch nicht, denn der kommt in die URL. Und wo kommt dann der eigentliche dateiinhalt rein?

also eigentlich wollte ich ja nur das nachbilden, was der restdebugger auch macht, denn damit klappts ja.

du kannst ja einfach mal im restdebugger "PUT" waehlen, den inhaltstyp auf "text/html" stellen und in den benutzerdef. rumpf den inhalt einer textdatei einfuegen. dann die kompos in ne leere app kopieren und im request die params ansehen.. (wenn du magst) also was bedeutet dadrin der "name"?

so, erstmal feierabend..

LG

de schorsch
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.339 Beiträge
 
Delphi 12 Athens
 
#6

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 16:00
"addFile" will aber einen dateinamen haben
Eigentlich hätte ich gefragt "bist'e dir sicher?", ABER

https://docwiki.embarcadero.com/Libr...equest.AddFile

Da fehlt wirklich eine Variante mit Stream.
Diesen Bug sollte man mal melden.

Dateiname (zum Laden und als Bezeichner "file" als Bezeichner)
oder
QuellDateiname (Dateisystem) mit optionalem Bezeichner
oder
TStream mit Bezeichner (was es aktuell nicht gibt ... also erst auf Festplatte und dann von dort, z.B. TPath.GetTempFileName mit TFile.WriteAll* oder Dergleichen)


Ja, AddFile reicht es am Ende auch nur an Params.AddItem weiter
aber von AddItem gibt es auch eine Variante, welche z.B. einen TFileStream/TMemoryStream oder TBytes (ala TFile.LoadAllBytes) entgegen nimmt.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (20. Okt 2022 um 16:26 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.629 Beiträge
 
Delphi 12 Athens
 
#7

AW: Problem bei FileUpload to Azure - debugger funzt - code nicht

  Alt 20. Okt 2022, 16:12
Solange man das Kriterium nicht kennt, nach dem der Server ein neues File anlegt oder ein bestehendes aktualisiert, wird das hier alles nur Spekulation.

Man muss nur bedenken, dass bei einem AddBody mit String als erstem Parameter ein zusätzlicher Body angelegt wird, während bei den anderen AddBody-Calls ein eventuell vorhandener Body-Parameter ersetzt wird. Aber ich sehe bisher noch nicht, inwieweit das hier relevant sein sollte.

Ein REST-Server ohne Beschreibung ist eigentlich unbrauchbar.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz