lion2486 Δημοσ. 20 Οκτωβρίου 2014 Δημοσ. 20 Οκτωβρίου 2014 Καλησπέρα σας, προσπαθώ με αρκετό κόπο να μετατρέψω αυτό το εγχείρημα (πρόκειται για επικοινωνία HTTP API του Xerox Docushare) http://dsdeveloper.blogspot.gr/2009/01/httpxml-upload.htmlσε php με χρήση της curl. Το πρόβλημά μου είναι η δόμηση του πακέτου με το αρχείο και τα boundaries. Η προσπάθειά μου μέχρι στιγμής είναι ανεπιτυχής και κάπως σαν τα παρακάτω πακέτα: Headers: Array ( [0] => Accept: */*, text/html [1] => Accept-Language: en [2] => DocuShare-Version: 5.0 [3] => Content-Transfer-Encoding: binary [4] => Content-type: "multipart/form-data"; boundary=f6bce71959b8c59c ) και το πακέτο: --f6bce71959b8c59c Content-Disposition: form-data; name="parent" Collection-10 --f6bce71959b8c59c Content-Disposition: form-data; name="document" EventsMap.pdf --f6bce71959b8c59c Content-Disposition: form-data; name="title" EventsMap --f6bce71959b8c59c Content-Disposition: form-data; name="author" --f6bce71959b8c59c Content-Disposition: form-data; name="file1"; filename="EventsMap.pdf" Content-Type: application/octet-stream Content-Transfer-Encoding: binary %PDF-1.4 ....{binary PDF Data}... %%EOF --f6bce71959b8c59c-- και ο τρόπος που το παράγω: $body = "\r\n--$boundary\r\nContent-Disposition: form-data; name=\"parent\"\r\n\r\n$collection\r\n"; $body .= "--$boundary\r\nContent-Disposition: form-data; name=\"document\"\r\n\r\n{$filename}.{$ext}\r\n"; $body .= "--$boundary\r\nContent-Disposition: form-data; name=\"title\"\r\n\r\n$filename\r\n"; $body .= "--$boundary\r\nContent-Disposition: form-data; name=\"author\"\r\n\r\n \r\n"; $body .= "--$boundary\r\nContent-Disposition: form-data; name=\"file1\"; filename=\"{$filename}.{$ext}\"\r\n"; $body .= "Content-Type: application/octet-stream\r\nContent-Transfer-Encoding: binary\r\n\r\n"; $body .= file_get_contents($file); $body .= "\r\n\r\n--$boundary--\r\n"; Μου έχει σπάσει τα νεύρα η δομή του πακέτου και πως μπορώ να το φτιάξω σωστά (ίσως γίνεται κάτι με τους white characters αλλά δεν το βρίσκω.) ΕΥΧΑΡΙΣΤΩ για την προσοχή σας! Μόλις το βρήκα, είχα βάλει quotes στο content-type [4] => Content-type: "multipart/form-data"; boundary=f6bce71959b8c59c και δεν χρειάζονταν.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα