Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

καλησπερα,εχω φτιαξει εναν server και εναν client που επικοινωνουν μεταξυ τους σε γλωσσα C.Mπορει καποιος να με βοηθησει οσον αφορα τον κωδικα που χρειαζομαι ωστε ο server να μπορει να λαμβανει το περιεχομεno html μια σελιδας απο εναν πραγματικο web server και να το αποθηκευει?

Δημοσ.

Αν δεν κάνω λάθος αν στείλεις στον server το εξής:

 

Θα σου απαντήσει με την σελίδα που θες.

 

αυτο δηλαδη το γραφω στον client??αν μπορεις γραψε ενα παραδειγμα πχ για το www.google.gr

Δημοσ.

Ναι εκει που στελνει το μύνημα ο client δοκιμασε να στελεις αυτό. Για το google λογικα θα δουλεψει.( Αν οχι το πολύ πολύ να βγάλει κανα Bad Request ως απάντηση ο server που σημαίνει οτι και παλι δουλευει.)

 

Σημειωση προσθεσε στο τέλος \r\n\r\n

Δημοσ.

Ναι εκει που στελνει το μύνημα ο client δοκιμασε να στελεις αυτό. Για το google λογικα θα δουλεψει.( Αν οχι το πολύ πολύ να βγάλει κανα Bad Request ως απάντηση ο server που σημαίνει οτι και παλι δουλευει.)

 

Σημειωση προσθεσε στο τέλος \r\n\r\n

 

ναι αλλα δεν σ αυτο που εγραψες δεν βλεπω πουθενα %s ή καποια μεταβλητη ωστε ο χρηστης να μπορει να πληκτρολογησει το url που θελει.αν μπορεις να γινεις λιγο πιο αναλυτικος θα το εκτιμουσα..

Δημοσ.

Σε κάποιο σημείο του κώδικα σου εχεις επιλέξει σε ποιον server θες να συνδεθεί ο client. Ισως εχεις βαλει localhost γιατι τρέχεις τον server που εφτιαξες τοπικά. Θα βαλεις www.google.com, και για port θα βαλεις την 80.

Μετά στειλε το GET request που σου είπα με τον client σου.

Δημοσ.

δεν με ενδιαφερει κατι τετοιο διοτι στην εργασια μου πρεπει ο χρηστης να επιλεγει το url που θα συνδεθει ο server και οχι να πειραζω εγω τα ορισματα της sockaddr_in

και για να καταλαβω τι εννοεις με το get request αν μπορεις γραψε την write που προτείνεις..

Δημοσ.

Ναι ο χρήστης το δινει το url και μετά αυτό που δινει το βαζεις στο sockaddr_in. Συγκεκριμενες εντολές C δεν ξερω γιατι δεν εχω κανει sockets σε C.

Αυτό που θα κανεις όμως ειναι κοινό παντού:

1) Εισοδος απο χρηστη του url και της port(ή την αφήνεις default 80. Για αυτό που θες να κανεις θες την 80)

2) Ανοιγμα socket στο url που έδωσε ο χρήστης στην port 80.

3) Αποστολή GET request με τον client στο socket : GET /index.html HTTP / 1.1\r\n\r\n

 

Στην θέση του /index.html θα βάλεις την σελίδα που θες. Μπορεις να βαλεις και full path δηλαδη www.google.com/index.html. Φαντάζομαι ο χρήστης θα δινει ολόκληρο το path.

Δημοσ.

Ναι ο χρήστης το δινει το url και μετά αυτό που δινει το βαζεις στο sockaddr_in. Συγκεκριμενες εντολές C δεν ξερω γιατι δεν εχω κανει sockets σε C.

Αυτό που θα κανεις όμως ειναι κοινό παντού:

1) Εισοδος απο χρηστη του url και της port(ή την αφήνεις default 80. Για αυτό που θες να κανεις θες την 80)

2) Ανοιγμα socket στο url που έδωσε ο χρήστης στην port 80.

3) Αποστολή GET request με τον client στο socket : GET /index.html HTTP / 1.1\r\n\r\n

 

Στην θέση του /index.html θα βάλεις την σελίδα που θες. Μπορεις να βαλεις και full path δηλαδη www.google.com/index.html. Φαντάζομαι ο χρήστης θα δινει ολόκληρο το path.

 

thnx gia tis apantiseis.Κατι τελευταιαο,στην εργασια λεει ο τοπικος σερβερ(δηλαδη ο server παιρνει το default αdresss toy pc μου) πρεπει να συνδεεται με εναν πραγματικο webserver.Πειραζοντας εγω το sockaddr in δεν ειναι σαν να συνδεομαι απ τον client απευθειας στον webserver?

Δημοσ.

Δηλαδή σου λεει να συνδεεσαι client -> local server -> webserver? Δεν βρίσκω το νόημα, αλλα γινεται να στειλεις το μήνυμα πρωτα στον local και ο local με την σειρα του να το στειλει στον web server.

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...