Metoda Port
zwraca ciąg znaków, a nie liczbę całkowitą. Jaki jest tego powód i czy można bezpiecznie przedłużyć port za pomocą ":"?Dlaczego port jest ciągiem, a nie liczbą całkowitą?
96
A
Odpowiedz
140
Dzieje się tak dlatego, że po dwukropku może znajdować się numer portu lub nazwa usługi.
Poniższy przykład jest ważne gdzie nazwa usługi jest używany zamiast numeru portu:
listener, err := net.Listen("tcp", "localhost:https") // port 443
// ...
Mapowanie portu dla określonej usługi można obejrzeć za pomocą net.LookupPort
. W systemach uniksowych plik /etc/services
pochodzi z mapowań.
1
Dla wielu Domyślną wartością jest 0: jeśli funkcja
func (u * URL) Port() string
numer zwrotny zamiast żądło port będzie 0
Port 0 jest zarezerwowanym portem w sieci TCP/IP, co oznacza, że nie powinno być używane w komunikatach TCP lub UDP. Jednak port 0 ma szczególne znaczenie w programowaniu sieci, w szczególności w programowaniu gniazd Unix: do żądania przydzielonych przez system portów dynamicznych.
to jest potrzeba programowania w kilku funkcjach
Powiązane problemy
- 1. Dlaczego liczba nie jest liczbą całkowitą bez znaku?
- 2. Walidacja Laravel: różnica między liczbą a liczbą całkowitą?
- 3. Porównanie ostrzeżenia między wskaźnikiem a liczbą całkowitą
- 4. jak sprawdzić, czy znak jest liczbą całkowitą?
- 5. Python: Sprawdź, czy argument jest liczbą całkowitą
- 6. Dlaczego instanceVariableNames jest ciągiem, a nie bardziej uporządkowaną kolekcją
- 7. Twig - Jak sprawdzić, czy zmienna jest liczbą/liczbą całkowitą
- 8. Przyrost liczbą całkowitą
- 9. Bash: Testowanie, czy zmienna jest liczbą całkowitą
- 10. Sprawdzanie, czy zmienna jest liczbą całkowitą
- 11. Ustal, czy obiekt jest liczbą całkowitą
- 12. Jak sprawdzić, czy zmienna jest liczbą całkowitą lub łańcuchem?
- 13. ld pliku danych powoduje, że rozmiar danych jest * ABS *, a nie liczbą całkowitą
- 14. Jak sprawdzić, czy wartość jest liczbą całkowitą lub ciągiem w pliku jasmine.js?
- 15. Jaka jest różnica między "nową liczbą (...)" a "liczbą (...)" w JavaScript?
- 16. Dlaczego konwersja między ciągiem a zmiennoprzecinkowym jest nieprawidłowa?
- 17. Różnica między nieskończonością a NaN (nie liczbą)
- 18. php, dodać kończące zera, gdy liczba jest liczbą całkowitą
- 19. Szukam elegancki sposób do analizowania liczbą całkowitą
- 20. TypeError: argument int() musi być ciągiem lub liczbą, a nie "AnonymousUser" w Django
- 21. VB2010 Jak sprawdzić, czy liczba jest liczbą całkowitą
- 22. Jak sprawdzić, czy wartość jest liczbą całkowitą z plpgsql?
- 23. Java - Jak sprawdzić, czy podział jest liczbą całkowitą czy zmiennoprzecinkową?
- 24. Sprawdzanie, czy podwójna wartość jest liczbą całkowitą - Swift
- 25. sprawdzanie, czy wartość pola tekstowego jest liczbą całkowitą w javascript
- 26. Sprawdź, czy wartość jest liczbą całkowitą w Sass
- 27. sprawdzanie poprawności ciągu jest nieujemną liczbą całkowitą w javascript
- 28. Niewyświetlanie liczb dziesiętnych, jeśli podwójne jest liczbą całkowitą?
- 29. Jak utworzyć spacje między każdą liczbą całkowitą w Ruby?
- 30. Porównaj zmienną z liczbą całkowitą w powłoce?
Zawsze intryguje mnie dychotomia typu otwartego/zamkniętego typu. Chciałbym zobaczyć coś takiego jak typ _mixed_, w którym są pewne wartości domyślne (tutaj np. Dobrze znane porty i usługi), ale także pozwala je rozszerzyć, ostatecznie wspierając autouzupełnianie. W mojej ograniczonej wiedzy praktycznej ADT TypeScripts są najbliższe, być może jerzyki ADT-ów mogą wyrazić to również bezpośrednio. –