Ontwerp foutgevalle met 'n ontfoutproksie
Kies HTTP-wysigings, vertragings en onderbroke uitruilings volgens die kliëntgedrag wat 'n proksiegebaseerde toets moet uitoefen.
'n Ontfoutproksie is nuttig wanneer 'n kliënt 'n reaksie moet teëkom wat die normale bediener selde lewer. Definieer eers die kliëntgedrag en kies dan die ingryping wat daardie toestand veroorsaak.
“Die versoek het misluk” is 'n te breë toetsgeval. 'n Geldige HTTP-foutreaksie, 'n reaksie wat nooit arriveer nie en 'n verbinding wat halfpad deur 'n aflaai onderbreek word, vra verskillende dinge van die toepassing.
| Geval | Gedrag om te ondersoek |
|---|---|
| 'n Volledige HTTP-foutreaksie | Of die kliënt die status lees en die beoogde foutbeleid toepas |
| 'n Vertraagde reaksie | Of die gebruiker kan kanselleer en die tydlimiet op die beoogde stadium toegepas word |
| 'n Onverwagte kop- of liggaamsveld | Of ontleding en validering duidelik misluk |
| 'n Onderbroke uitruiling | Of onvolledige data onderskeibaar bly van 'n voltooide resultaat |
Gebruik 'n ingryping op die regte laag
Charles bied breekpunte wat 'n versoek of reaksie pouseer voordat dit aangestuur word. Die onderskepte boodskap kan ondersoek en gewysig word, deurgelaat of afbreek word. Sy Rewrite-nut pas herhaalbare wysigings op ooreenstemmende kopte, URL's of liggame toe. Beperking beheer bandwydte en bygevoegde vertraging.
Hierdie kontroles kan 'n HTTP-kliënt se gedrag uitoefen, maar 'n bandwydtebeperking is nie 'n presiese model van ewekansige IP-pakketverlies nie. 'n Proksie kan data buffer, verbindings hergebruik en 'n aparte opstroomverbinding oopmaak. Kies 'n netwerkverswakkingsnut wanneer die vereiste toestand spesifiek onder HTTP lê.
Hou elke geval interpreteerbaar
Pas die beoogde gasheer en pad nou aan. Begin met 'n normale uitruiling, aktiveer een verandering en teken aan wat verander is. As 'n herprobeering 'n tweede eindpunt bereik, besluit of dieselfde reël daardie poging moet beïnvloed. 'n Onvoorwaardelike herskrywing kan andersins elke herstelpad in die oorspronklike fout verander.
Vir 'n oplaai of betalingagtige bewerking bewys 'n verlore reaksie nie dat die bediener die versoek verwerp het nie. Sluit daardie onduidelikheid in die herprobeergeval in eerder as om te beweer dat elke vervoerfout veilig is om te herhaal.
Om HTTPS-inhoud te ondersoek of te wysig, moet die kliënt aan die ontfoutproksie se TLS-ondersoekopset deelneem. 'n Proksie wat net CONNECT dra, sien geënkripteerde toepassinggrepe. Gebruik 'n geïsoleerde toetsopset en herstel daarna sy roetering- en vertrouensopset sodat latere waarnemings die normale kliënt beskryf.