curl -N ਪ੍ਰੌਕਸੀ ਨੂੰ ਬਫਰਿੰਗ ਰੋਕਣ ਲਈ ਨਹੀਂ ਕਹਿ ਸਕਦਾ
ਬਫਰਿੰਗ ਕਲਾਇੰਟ, ਵਿਚੋਲੇ ਜਾਂ ਰੈਂਡਰਿੰਗ ਪਾਸੇ ਕਿੱਥੇ ਹੈ, ਇਹ ਪਛਾਣੋ, ਬਿਨਾਂ ਇਹ ਮੰਨਣ ਦੇ ਕਿ curl ਦਾ ਆਉਟਪੁੱਟ ਫਲੈਗ ਪੂਰਾ ਜਵਾਬ ਮਾਰਗ ਬਦਲ ਦਿੰਦਾ ਹੈ।
curl -N, ਜਾਂ --no-buffer, curl ਦੀ ਆਉਟਪੁੱਟ-ਸਟ੍ਰੀਮ ਬਫਰਿੰਗ ਬੰਦ ਕਰਦਾ ਹੈ। ਪ੍ਰੌਕਸੀ ਜਾਂ ਸਰਵਰ ਦੀ ਬਫਰਿੰਗ ਨੀਤੀ ਬਦਲੇ ਬਿਨਾਂ ਦੇਰੀ ਨਾਲ ਆਉਣ ਵਾਲੇ ਆਉਟਪੁੱਟ ਦਾ ਨਿਦਾਨ ਕਰਨ ਵਿੱਚ ਇਹ ਮਦਦ ਕਰ ਸਕਦਾ ਹੈ।
curl --proxy http://proxy.example:8080 --noproxy '' --no-buffer --max-time 30 https://example.com/streamਕਿਸੇ ਜਨਤਕ ਪ੍ਰੌਕਸੀ ਰਾਹੀਂ ਤੁਲਨਾ ਲਈ HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਵਿੱਚੋਂ ਇੱਕ HTTP ਐਂਡਪੁਆਇੰਟ ਚੁਣੋ। ਆਪਣਾ ਅਸਲ ਸਟ੍ਰੀਮ URL ਵਰਤੋ ਅਤੇ ਲੋੜੀਂਦੀ ਸੀਮਾ ਚੁਣੋ। ਖਾਲੀ ਬਾਈਪਾਸ ਸੂਚੀ ਇਸ ਤੁਲਨਾ ਨੂੰ ਚੁਣੇ ਹੋਏ ਪ੍ਰੌਕਸੀ ਮਾਰਗ ਉੱਤੇ ਰੱਖਦੀ ਹੈ।
ਆਗਮਨ, ਡੀਕੋਡਿੰਗ ਅਤੇ ਪ੍ਰਦਰਸ਼ਨ
ਸਰਵਰ ਕ੍ਰਮਵਾਰ ਬਾਈਟ ਪੈਦਾ ਕਰ ਸਕਦਾ ਹੈ, ਵਿਚੋਲਾ ਉਨ੍ਹਾਂ ਨੂੰ ਇਕੱਠਾ ਕਰ ਸਕਦਾ ਹੈ, ਕਲਾਇੰਟ ਲਾਇਬ੍ਰੇਰੀ ਪੂਰੀ ਬਾਡੀ ਪੜ੍ਹ ਸਕਦੀ ਹੈ, ਅਤੇ ਬ੍ਰਾਊਜ਼ਰ ਰੈਂਡਰਿੰਗ ਟਾਲ ਸਕਦਾ ਹੈ। ਜਿੱਥੇ ਤੁਸੀਂ ਮਾਰਗ ਨਿਯੰਤਰਿਤ ਕਰਦੇ ਹੋ ਉੱਥੇ ਪਹਿਲੇ ਲਾਭਦਾਇਕ ਬਾਈਟ ਅਤੇ ਅਗਲੀ ਤਰੱਕੀ ਦੀ ਤੁਲਨਾ ਕਰੋ। ਪੇਂਟ ਸਮਾਂ ਅਤੇ ਸਰਵਰ ਦੀ ਕੁੱਲ ਮਿਆਦ ਇਹ ਨਹੀਂ ਦੱਸਦੇ ਕਿ ਬਾਡੀ ਕਦੋਂ ਪਹੁੰਚਦੀ ਹੈ।
Guzzle ਵਿੱਚ ਸਟ੍ਰੀਮਿੰਗ ਅਤੇ ਬਾਡੀ ਵਰਤੋਂ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਜਾਂਚੋ। ਕੰਪਰੈਸ਼ਨ ਡੀਕੋਡਿੰਗ ਪੜਾਅ ਜੋੜਦਾ ਹੈ। ਡੀਕੋਡ ਕੀਤਾ ਆਉਟਪੁੱਟ ਕਦੋਂ ਦਿਖਦਾ ਹੈ, ਇਸ ਵਿੱਚ ਬਦਲਾਅ ਆਪਣੇ ਆਪ ਇਹ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਪ੍ਰੌਕਸੀ ਹੀ ਬਫਰਿੰਗ ਹਿੱਸਾ ਹੈ।
ਵਿਚੋਲਾ ਕੀ ਦੇਖਦਾ ਹੈ
ਇੱਕ ਧੁੰਦਲਾ CONNECT ਪ੍ਰੌਕਸੀ ਅੰਦਰੂਨੀ HTTPS ਜਵਾਬਾਂ ਨੂੰ ਆਮ HTTP ਵਾਂਗ ਪਾਰਸ ਨਹੀਂ ਕਰ ਸਕਦਾ। ਅਧਿਕਾਰਤ TLS ਜਾਂਚ ਸੇਵਾ ਦੀ ਦਿੱਖ ਵੱਖਰੀ ਹੁੰਦੀ ਹੈ, ਇਸ ਲਈ ਸਿਰਫ਼ HTTPS ਜਾਂਚ ਦੀ ਗੈਰਹਾਜ਼ਰੀ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ।
ਉਡੀਕ ਪੜਾਅ ਪਛਾਣਨ ਤੋਂ ਬਾਅਦ ਉਸ ਹਿੱਸੇ ਵੱਲੋਂ ਸਮਰਥਿਤ ਸਟ੍ਰੀਮਿੰਗ ਨਿਯੰਤਰਣ ਵਰਤੋ। ਰਿਵਰਸ-ਪ੍ਰੌਕਸੀ ਨਿਰਦੇਸ਼ ਆਪਣੇ ਆਪ ਫਾਰਵਰਡ ਪ੍ਰੌਕਸੀ 'ਤੇ ਲਾਗੂ ਨਹੀਂ ਹੁੰਦੇ; curl ਦਾ ਆਉਟਪੁੱਟ ਫਲੈਗ ਸਿਰਫ਼ ਆਪਣੇ ਹਿੱਸੇ ਦਾ ਮਾਰਗ ਬਦਲਦਾ ਹੈ।