curl Cloud9 Rails API挑战:允许的网络,但仍无法呈现控制台

dpiehjr4  于 2022-11-13  发布在  其他
关注(0)|答案(4)|浏览(108)

我正在跟随this Treehouse Build a Rails API course。我正在使用Cloud9 IDE,我认为这与问题有关。我卡住的步骤是通过控制台中的API创建一个新列表。
一开始我从网络上收到一条错误信息,说“无法渲染控制台”。在谷歌上搜索后,我在development.rb文件中将网络列入了白名单。错误信息是不同的,所以我相信我正确地将它列入了白名单(或者至少做了一些事情)。但它没有达到预期的效果,错误信息似乎自相矛盾。
Started POST "/api/lists" for 123.456.78.999 at 2015-09-14 14:53:33 +0000 Cannot render console from 123.456.78.999! Allowed networks: 123.456.78.999, 127.0.0.0/127.123.123.123, ::1
我之所以更改了这些数字是因为我对安全性不太了解。问题的关键(对我来说,也是个谜)是它说我不能从一个显然被允许的网络(即123.456.78.999 == 123.456.78.999)渲染控制台。
我将感谢任何建议可能是什么问题。我没有麻烦跟随随着教程,直到这一步;我输入的命令导致了与视频中相同的结果。
这是我最近输入的命令:
curl -i -H "Accept: application/json" -H "Content-type: application/json" -X POST -d '{"title":"The Title will go here"}' https://myapp-me.c9.io/api/lists
到目前为止,输入该URL而不是“localhost”对我来说是有效的,但它也可能与问题有关。
感谢您的任何线索,并高兴地张贴额外的代码,如果需要的。

3yhwsihp

3yhwsihp1#

请添加config/enviroments/development.rb

config.web_console.whitelisted_ips =   '0.0.0.0/0.0.0.0'
k2arahey

k2arahey2#

要将2个IP列入白名单〉请考虑以下示例:

config.web_console.whitelisted_ips =  %w( 127.0.0.1 10.0.0.9 )

要将整个IP子网列入白名单〉请考虑以下示例:

config.web_console.whitelisted_ips =  %w( 127.0.0.1 10.0.0.0/24 )

始终添加127.0.0.1,否则本地计算机将无法访问。

qlfbtfca

qlfbtfca3#

如果有人像我一样在2022年还在看这个问题,那么你可以编辑config/environments/development.rb来说明整个私有网络,如下所示:

Rails.application.configure do
  .
  .
  .
  config.web_console.permissions = '123.456.78.0/16'
end

More information here.

hrirmatl

hrirmatl4#

问题的一部分是你需要在“sudo su”shell中运行Ruby on Rails应用程序。所以,确保你运行sudo su并成为root用户。第二个问题是你必须在端口8080上运行应用程序,这样当你运行服务器时,确保设置了-p 8080标志:

  1. bundle update(可选)
  2. bundle install(可选)
  3. sudo su
  4. rails s -p 8080
    1.新建终端--〉预览--〉预览正在运行的应用程序

相关问题