Καταρχήν από τον τελικό χρήστη θα το ζητάς μόνο μια φορά κατά την έναρξη της εφαρμογής σου, εκτός κι αν πρόκειται για πολύ ιδιαίτερη περίπτωση.
Από 'κει και πέρα το ερώτημά σου είναι ουσιαστικά αν θα κρατάω το ίδιο instance του proxy (μεταβλητή client στο τελευταίο σου post) ή θα δημιουργώ καινούργιο για κάθε κλήση στον server.
Η απάντηση σε αυτό το ερώτημα εξαρτάται και από το authentication αλλά και από άλλα πράγματα, όπως η ταχύτητα δημιουργίας/καταστροφής του instance και τα dependency στον κώδικά σου. Σχετικά με τα dependencies, εμένα δεν μου αρέσει να κρατάω το ίδιο instance μια κλάσης σαν private μεταβλητή μιας άλλης κλάσης ή ακόμα χειρότερα στα static. Δημιουργεί dependency του κώδικα από τη συγκεκριμένη μεταβλητή. Δηλαδή για να λειτουργήσει κάποιος άλλος πρέπει να την αρχικοποιήσει.
Σε συντομία, δημιουργώ καινούργιο instance του service κάθε φορά που το θέλω, εκτός αν ξέρω ότι πρόκειται να κάνω πολύ σύντομα πολλές κλήσεις στον server οπότε κρατάω το ίδιο (πολύ σύντομα = στο ίδιο user interaction = 0-2 sec).
Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.