Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

To get prefixed result URLs, use GET not POST. Try duckduckgo.com/lite/ and lite.duckduckgo.com/lite/

If I recall correctly there is a way to turn off the prefixed result URLs without having to turn on Javascript, by adding/changing a URL parameter, e.g., kh. However that is not the default setting. Not very friendly toward the privacy-conscious user who has Javascript disabled and does not read HN to find out about otherwise undocumented URL parameter usage.

For certain queries, I can actually get a different first result based on the HTTP method I use.



I'm not sure what you mean by bringing up HTTP method. The two main ways I know to get to the results page are to enter a query into the website or the browser search bar, and both of those seem to issue GET requests. They also both produce real URLs without any intervention. What defaults are different for you than they are for me?


If you navigate to https://duckduckgo.com/lite/ or https://lite.duckduckgo.com/lite/, type your query in the form input field, you are using POST. If, OTOH, you were to type your query into the address bar, e.g., https://duckduckgo.com/lite/?q=xyz then you are using GET.

   curl -Huser-agent= https://duckduckgo.com/lite/?q=xyz|grep result-link

   curl -Huser-agent= -dq=xyz https://duckduckgo.com/lite/|grep result-link




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: