【问题标题】:How can I access a subdomain through ngrok?如何通过 ngrok 访问子域?
【发布时间】:2015-04-22 15:10:39
【问题描述】:

我有一个带有“api”子域的 rails 站点。我本地机器上的路由如下所示:

http://mysite.dev         #<-- normal web stuff
http://api.mysite.dev     #<-- my api

如何映射这两个子域?这是我的 ngrok 配置文件,但 api 端点似乎指向基域。

tunnels:
web:
    subdomain: "my-project"
    proto:
        http: mysite.dev:5000
api:
    subdomain: "api.my-project"
    proto:
        http: api.mysite.dev:5000  

【问题讨论】:

  • 如果不避免对代码进行一些更新,我认为这是不可能的。因为生成的 ngrok URL 将是 api.my-project.ngrok.com 如果您可以共享您的路由文件,或者共享您如何基于子域路由请求,将会很有帮助?

标签: ruby-on-rails ngrok


【解决方案1】:

如果您在路由中使用约束,我建议使用如下约束类:

class APIConstraint

  def matches?(request)
     # I would extract the hard coded domains out into some config
     # file, but you get the idea..
     request.host == "ngrok.com" ? request.subdomain.include?("api") : request.subdomain == "api"
  end

end

然后在你的routes.rb

namespace :api do
  constraints APIConstraint.new do
    resources :some_resource
  end
end

【讨论】:

    猜你喜欢
    • 2021-04-16
    • 2021-07-09
    • 2016-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-01
    • 2012-08-22
    相关资源
    最近更新 更多