Gall cais Java ddod ar draws sawl mewnbwn dirprwy: cyfluniad claith penodol, y dewisydd rhagosodedig, priodweddau rhwydwaith JVM, a gosodiadau system weithredu a gefnogir. Pan fydd log yn sôn am SOCKS yn annisgwyl, nodwch pa fewnbwn a'i dewisodd.

Ar gyfer cod sy'n defnyddio'r dewisydd rhagosodedig, archwiliwch y penderfyniad ar gyfer y cyrchfan union:

URI target = URI.create("https://example.com/");
ProxySelector selector = ProxySelector.getDefault();
if (selector != null) {
    System.out.println(selector.select(target));
}

Mae hyn yn adrodd ymgeiswyr y dewisydd. Nid yw'n profi pa gysylltiad a lwyddodd yn y pen draw, a gall claith â llwybr penodol ei hun wneud dewis gwahanol.

Gwiriwch y gosodiadau effeithiol

Adolygwch http.proxyHost, https.proxyHost, socksProxyHost, eu porthladdoedd, a java.net.useSystemProxies. Mae dogfennaeth priodweddau rhwydwaith JDK yn disgrifio eu cwmpas a'u blaenoriaeth. Gwiriwyd darganfyddiad dirprwy'r system wrth gychwyn; gosodwch ef yn fwriadol wrth gychwyn y JVM.

Mae atebion hanesyddol yn disgrifio cyfuniadau penodol o hen ddeialogau Windows a hen JDKau. Gall y straeon hynny egluro tarddiad gwaith-drosodd, ond nid ydynt yn profi bod gan rediad amser cyfredol yr un nam. Cofnodwch fersiwn y rediad a mewnbwn y dewisydd cyn newid gosodiadau system weithredu ar gyfer pob cymhwysiad.

Os oes angen dirprwy HTTP ar y cymhwysiad ar gyfer un claith, gall gyfluniad dirprwy penodol wneud y gofyniad hwnnw'n gliriach. Os oes angen llwybro awtomatig canolog arno, archwiliwch pam y derbyniodd neu y dychwelodd y dewisydd y cofnod SOCKS annisgwyl.

Dylai dewisydd addasedig gadw'r osgoi a'r trin methiannau bwriadol. Gall hidlo pob ymgeisydd SOCKS yn ddifeddwl dorri cysylltiadau a oedd i fod i ddefnyddio un. Trwsiwch y rheol anghywir gyda'r cwmpas lleiaf y gallwch ei nodi.

Erthyglau cysylltiedig