diff --git a/server.cr b/server.cr deleted file mode 100644 index 77ef216..0000000 --- a/server.cr +++ /dev/null @@ -1,15 +0,0 @@ -require "kemal" - -get "/" do - "Hello World!" -end - -get "/ip" do |env| - env.response.content_type = "text/plain" - - p! env.request.remote_address.to_s - - "Hello World!" -end - -Kemal.run diff --git a/shard.yml b/shard.yml index be04824..dcbfeb1 100644 --- a/shard.yml +++ b/shard.yml @@ -1,18 +1,18 @@ name: ips version: 0.1.0 -# authors: -# - name +authors: + - Alexander Popov -# description: | -# Short description of ips +description: | + IP Services dependencies: kemal: github: kemalcr/kemal -# development_dependencies: -# webmock: -# github: manastech/webmock.cr +targets: + ips: + main: src/ips.cr -# license: MIT +license: MIT-0 diff --git a/src/api/remote_addr.cr b/src/api/remote_addr.cr new file mode 100644 index 0000000..2111a6a --- /dev/null +++ b/src/api/remote_addr.cr @@ -0,0 +1,15 @@ +require "kemal" + +# Return remote user IP address +# +# Output: +# ```plain +# 127.0.0.1 +# ``` +get "/ip" do |env| + env.response.content_type = "text/plain" + + addr = env.request.remote_address.to_s + + addr.split(":")[0] +end diff --git a/src/ips.cr b/src/ips.cr new file mode 100644 index 0000000..8414567 --- /dev/null +++ b/src/ips.cr @@ -0,0 +1,9 @@ +require "kemal" +require "./api/*" + +get "/" do + "Hello World!" +end + +Kemal.config.port = 3009 +Kemal.run