Skip to main content

Tutorial: Create a HTTP handler

Let's start by using the editor to write an API endpoint that responds to a browser HTTP request.

  1. To create a new HTTP endpoint, we first bring up the omnibox, by clicking anywhere on the screen, pressing Cmd-k/Ctrl-k, or pressing the plus next to HTTP on the sidebar.

gettingstarted/Screen_Shot_2020-02-11_at_9.10.26_AM.png

  1. Enter the HTTP method GET, and the HTTP route /math.

img/gettingstarted/Screen_Shot_2020-02-11_at_9.11.23_AM.png

  1. You can now write any code in the blank this is the return value of the API endpoint that you've just created. To start with, let's just return 4.

img/gettingstarted/Screen_Shot_2020-02-11_at_9.12.02_AM.png

  1. Click the handler's menu (☰) in the upper right and select "open in new tab", to see your API endpoint running in production.

img/gettingstarted/Screen_Shot_2020-02-11_at_9.12.43_AM.png

  1. Go back to Darklang to edit your code. Add + 5 to the end of the code and leave your cursor in line.

gettingstarted/Screen_Shot_2020-02-11_at_9.14.25_AM.png

  • The 9 below the handler shows you the return value for the handler.

  • The 5 on the left shows you the result of the expression where the cursor currently is (in this case, 5). This isn't very useful when it's an integer, but if it's a variable it will show you the result of the variable.

gettingstarted/Screen_Shot_2020-02-11_at_9.16.06_AM.png

  1. Hover your mouse over the white dots on the left. Each dot is a "trace", representing a single request to your handler. Traces are fundamental to coding in Darklang, and we'll come back to them later.

Congratulations! You've now created (and deployed) a HTTP endpoint on Darklang.