我有一个调用API并使用令牌进行身份验证的应用程序。我需要存储此令牌并经常刷新它,因此我在自定义类中使用def authenticate
Rails.cache.fetch(@token, expires_in: 2.hours.to_i) do
login_uri = @base_uri + "auth/login"
auth_response = HTTParty.post(login_uri, body: { username: ENV["API_USERNAME"], password: ENV["API_PASSWORD"] } )
@token = auth_response.parsed_response["token"]
end
end
来处理API调用。这在我的本地开发机器上效果很好,但在生产中却出错。我正在为我的开发机运行Mac,并且生产在Ubuntu 18上进行。这是引发错误的代码:
Errno::ENOTDIR (Not a directory @ rb_file_s_rename -
(/var/www/myapp/releases/20190424134348/tmp/cache/.00020190424-1954-lgpvq5,
/var/www/myapp/releases/20190424134348/tmp/cache/001/000/)):
这是我遇到的错误:
/001
Rails出于某种原因似乎正在尝试重命名或移动缓存文件。查看服务器上的/000
目录,但是子目录static int maze2[][] = {{1, 1, 1, 1, 1, 0, 1, 1, 1, 1},
{1, 1, 1, 0, 0, 0, 0, 0, 0, 1},
{1, 0, 0, 0, 1, 0, 1, 0, 0, 1},
{1, 0, 0, 1, 1, 0, 1, 1, 0, 1},
{1, 1, 0, 0, 1, 0, 1, 1, 0, 1},
{1, 0, 0, 1, 1, 0, 1, 0, 0, 1},
{1, 1, 0, 0, 1, 0, 1, 0, 1, 1},
{1, 0, 0, 1, 1, 0, 1, 0, 0, 1},
{1, 1, 0, 0, 1, 0, 1, 0, 1, 1},
{1, 1, 1, 1, 1, 0, 1, 1, 1, 1}};
不存在。