TFPHTTClient and Socks proxy? lazarus / 38-Networking and Web Programming ---------------------------------------------------------------------- Renat.Su · 2018-04-24 07:09 Sorry, but I do not understand the simple question of work TFPHTTPClient. I was forced to work synapse through socks and HTTP proxies. In the case of the standard TFPHTTPClient I did not understand how to use socks proxy. In wiki, too, not found the big info. How to work through socks proxy??? ---------------------------------------------------------------------- Thaddy · 2018-04-24 07:39 You need trunk for that I believe. AllowRedirect property, Property Proxy ---------------------------------------------------------------------- Renat.Su · 2018-04-24 08:15 The stable version has a proxy property of TProxyData. But as I understood this a HTTP proxy. I'll see what changes in the trunk version, thank you! ---------------------------------------------------------------------- Thaddy · 2018-04-24 11:08 Quote from: Renat.Su on April 24, 2018, 10:15:21 amThe stable version has a proxy property of TProxyData. But as I understood this a HTTP proxy. I'll see what changes in the trunk version, thank you! In this case http proxies are basically a specialization of socks proxies to limit the protocol to http. And that is what you are using: a http client so you *should* / *must* limit to the http protocol. See it like this. ---------------------------------------------------------------------- Remy Lebeau · 2018-04-26 21:24 Quote from: Thaddy on April 24, 2018, 01:08:21 pmIn this case http proxies are basically a specialization of socks proxies to limit the protocol to http. That is not what an HTTP proxy is or does.  An HTTP proxy simply uses the HTTP protocol to communicate with the client, but with special semantics, like requiring absolute URLs in the request line of GET/POST requests, or using the CONNECT verb to establish a raw byte tunnel.  HTTP proxies work with HTTP and non-HTTP clients alike. Quote from: Thaddy on April 24, 2018, 01:08:21 pmAnd that is what you are using: a http client so you *should* / *must* limit to the http protocol. That is simply not true.  The HTTP protocol has no such limitation.  There is no requirement that an HTTP client must use an HTTP proxy.  Most commonly used web browsers can quite happily use SOCKS proxies for HTTP connections.  And many non-HTTP clients support HTTP proxies for non-HTTP traffic. Quote from: Renat.Su on April 24, 2018, 09:09:03 amIn the case of the standard TFPHTTPClient I did not understand how to use socks proxy. In wiki, too, not found the big info. How to work through socks proxy???    I don't know if TFPHTTPClient supports SOCKS proxies or not.  You already found a solution in Synapse.  Indy's TIdHTTP component also supports HTTP and SOCKS proxies (HTTP via the TIdHTTP.ProxyParams property, and SOCKS via a separate TIdSocksInfo component assigned to the TIdHTTP.Socket.TransparentProxy property). ---------------------------------------------------------------------- BeniBela · 2018-04-26 22:55 A SOCKS proxy is when you need to be especially sneaky and take of your shoes to only walk on your sock quietly ---------------------------------------------------------------------- Renat.Su · 2018-04-27 10:59 Quote from: Remy Lebeau on April 26, 2018, 11:24:52 pmQuote from: Thaddy on April 24, 2018, 01:08:21 pmIn this case http proxies are basically a specialization of socks proxies to limit the protocol to http. That is not what an HTTP proxy is or does.  An HTTP proxy simply uses the HTTP protocol to communicate with the client, but with special semantics, like requiring absolute URLs in the request line of GET/POST requests, or using the CONNECT verb to establish a raw byte tunnel.  HTTP proxies work with HTTP and non-HTTP clients alike. Quote from: Thaddy on April 24, 2018, 01:08:21 pmAnd that is what you are using: a http client so you *should* / *must* limit to the http protocol. That is simply not true.  The HTTP protocol has no such limitation.  There is no requirement that an HTTP client must use an HTTP proxy.  Most commonly used web browsers can quite happily use SOCKS proxies for HTTP connections.  And many non-HTTP clients support HTTP proxies for non-HTTP traffic. Quote from: Renat.Su on April 24, 2018, 09:09:03 amIn the case of the standard TFPHTTPClient I did not understand how to use socks proxy. In wiki, too, not found the big info. How to work through socks proxy???    I don't know if TFPHTTPClient supports SOCKS proxies or not.  You already found a solution in Synapse.  Indy's TIdHTTP component also supports HTTP and SOCKS proxies (HTTP via the TIdHTTP.ProxyParams property, and SOCKS via a separate TIdSocksInfo component assigned to the TIdHTTP.Socket.TransparentProxy property). Thanks for the reply. As I understood support of socks there is no. ---------------------------------------------------------------------- Renat.Su · 2018-04-27 11:01 Quote from: BeniBela on April 27, 2018, 12:55:42 amA SOCKS proxy is when you need to be especially sneaky and take of your shoes to only walk on your sock quietly I do not quite understand You. socks can be used to connect to a site where it is not locally accessible. For example, for the operation of telegram bots, if it is not available in a particular country. ---------------------------------------------------------------------- Remy Lebeau · 2018-05-04 01:09 Quote from: Renat.Su on April 27, 2018, 01:01:53 pmI do not quite understand You. BeniBela was just making a joke, ignore it...