Bunaigh CONNECT sula dtosaíonn croitheadh láimhe TLS Asio
Úsáid an chéad chiseal eile de shruth SSL Asio don mhalartú HTTP trom ar an seachfhreastalaí, ansin tosaigh TLS tríd an tollán a nglactar leis.
Le haghaidh ssl::stream<tcp::socket> trí sheachfhreastalaí HTTP nó gnáth, úsáid a iompar amh sula n-iarrfaidh tú air TLS a dhéanamh chuig an gceann scríbe:
auto& transport = tlsStream.next_layer();- Ceangail an t-iompar sin le hóst agus le port an tseachfhreastalaí. Le haghaidh ceann scríbe HTTPS poiblí a bhfuil cead aige gan dintiúir sheachfhreastalaí a bheith cumraithe, cuireann an liosta seachfhreastalaí HTTP críochphointí iarrthacha ar fáil; seiceáil go gceadaíonn an t-iarrthóir an tollán a iarrtar.
- Seol CONNECT agus údarás an chinn scríbe á ainmniú, mar shampla
api.example:443, agus déan anailís ar cheanntásca iomlána an fhreagra ar an iompar amh. Osclaíonn 2xx rathúil an tollán; fanann diúltú mar fhreagra seachfhreastalaí HTTP. - Cumraigh ainm óstach an chinn scríbe, an SNI riachtanach, na fréamhacha muiníne agus fíorú an phiarach, ansin tosaigh croitheadh láimhe an chliaint ar
tlsStream. - Nuair a n-éiríonn le TLS, úsáid léamh agus scríobh an tsrutha SSL don fheidhmchlár. Má léann tú an chéad chiseal eile go díreach ag an bpointe sin, seachnaítear próiseáil TLS.
Tuga aon bharrachas ón bparsálaí HTTP chuig an gcéad chéim eile. Tá ró-ualaithe croitheadh láimhe maolánacha ag Asio; má chaitear eireaball atá ag an bparsálaí, féadfar bearta a lámhachadh cheana ón socóid a chailleadh.
Leis an gcineál simplí seo, sroicheann next_layer agus lowest_layer araon TCP. Is féidir le níos mó cumhdaigh iad a dhéanamh difriúil, mar sin roghnaigh an comhéadan a iompraíonn fíorphrótacal sreinge an tseachfhreastalaí. Cuireann seachfhreastalaí HTTPS céim TLS eile leis agus tá sé lasmuigh den seicheamh CONNECT gnáth-théacs seo.