אַ כּלל שיקט http://reports.example:80/ דורך אַ פּראָקסי אָבער לאָזט http://reports.example/ גיין גלײַך. די URL־ען באַשרײַבן דעם זעלביקן געוויינטלעכן HTTP ענדפּוינט. דער אומפּאַסונג קומט געוויינטלעך פון פֿאַרגלײַכן די פּאַרסירטע פּאָרטן פּשוט־װערטלעך.

URI.getPort() גיט צוריק -1 װען קיין פּאָרט ערשיינט נישט אין דער URI. ער פֿאַרבײַטט נישט דעם פֿאַרבאַשטימטן װערט פֿאַרן סכימה. אַ ראָוטינג פּאָליטיק װאָס פֿאַרגלײַכט דעם װערט מיט 80 װעט אָנמיסט די צװײטע URL.

String scheme = uri.getScheme();
int port = uri.getPort();
if (port == -1) {
    if ("http".equalsIgnoreCase(scheme)) port = 80;
    else if ("https".equalsIgnoreCase(scheme)) port = 443;
}

װנדט אָן די זעלבע נאָרמאַליזירונג אויף ביידע זייטן פֿון דער פֿאַרגלײַכונג. פֿאַרריכטן נאָר די URI פֿון דער בקשה לאָזט נאָכאַמאָל אַן אויסגעשטעלטער ציל מיט אַן אויסגעלאָזטן פּאָרט אָן אַ פּאַסונג. פֿאַרגלײַכט דעם האָסט, דעם עפעקטיװן פּאָרט און דעם געמיינטן סכימה; אָפּװאַרפֿט פֿאַרקרימטע אָדער האָסטלאָזע צילן דורך אַ באַשטימטן פֿעלער־װעג.

מאַכט נישט פֿון יעדער צוריקרופונג אַן HTTP באַשלוס

אַ פֿאַרבאַשטימטער אויסװײלער קען אויך װערן געפֿרעגט פֿאַר פֿאַרבינדונגען פֿון רוי סאָקעטן, מיטן סכימה socket. נאָר אַ פּאַסונג פֿון האָסט און פּאָרט טאָר נישט מאַכן די צוריקרופונג צוריקצוגעבן אַן HTTP פּראָקסי געמיינט פֿאַר URL בקשות. איבערגעבט נישט־אונטערשטיצטע סכימות צום פֿריִערדיקן אויסװײלער, און האַלט זײַן פּאַסיק פֿאַרהאַלטן.

כאַפּט אָפּ דעם פֿריִערדיקן אויסװײלער איידער איר אינסטאַלירט אײַערן. זוכן דעם איצטיקן פֿאַרבאַשטימטן װערט פֿון אינעװײניק דעם פֿאַרבײַטנדיקן קען פּשוט נאָכאַמאָל רופֿן דעם פֿאַרבײַטנדיקן.

לאָגט דעם סכימה, דעם האָסט, דעם אָריגינעלן פּאָרט און דעם עפעקטיװן פּורט װען איר דיאַגנאָזירט אַן אומפּאַסונג. פֿאַרלאָזט זיך נישט אויף איין באַאַכטעטער צאָל אָדער דער סדר פֿון צוריקרופונגען צװישן JDK אימפּלעמענטאַציעס. די פּאָליטיק דאַרף מאַכן אַ ריכטיקן באַשלוס פֿאַר יעדער צוגעשטעלטער URI.

פֿאַרבונדענע אַרטיקלען