私はLua 5.1を使用しています。いくつかのファイルをサンドボックスしたいです。 setfenv
をloadfile
としているようですが、require
で提供されているメカニズムを使用したいので、require
も使用したいと思います。私は、ディスクに置かれていないファイルをロードするカスタムローダーをいくつか持っています。出来ますか?または、代替ソリューションがありますか?setfenv with require function with Lua
答えて
ここでの解決方法はかなりわかりやすいようです。require
ファイルをモジュールを実装するファイルにしないでください。代わりに、ファイルloadfile
をrequire
に、実際のモジュールをサンドボックスにします。その後、そのモジュールを返すことができます。
申し訳ありませんが、私はそれを理解していない、どのようにこのソリューションは動作しますか?実際のモジュールをロードするためには、 'require'dファイルは' require'を再度呼び出さなければなりません。どんなところでも、私はモジュールがサンドボックス化されているのを意識しないようにしたいと思います。 – Noverull
@ Noverull:それで、私はあなたが実際のモジュールを "ロード"すると言ったのです。あなたは 'require'を使用しません。その上で 'loadfile'を使います。モジュールは特別なものではありません。彼らはただのLuaスクリプトです。 –
これは 'require'の使用を中断します。 'loadfile'で読み込めないファイルがあります。 – Noverull
- 1. Browserify with require( 'fs')
- 2. lua https.request with certificate
- 3. リアクションネイティブ:require()with Dynamic String?
- 4. パラメータUFT with function
- 5. Mongoose find()with function
- 6. Lodash:_.forEach with function
- 7. C++ 11 for_each with lambda with member function
- 8. Javascript setTimeout function with JQuery
- 9. Javascript visibility function with transition
- 10. Coq: `Function ... with`構文
- 11. PHP/SQL help with function
- 12. std :: is_nothrow_invocable with member function
- 13. Qt with Lua | luaファイルを置く場所
- 14. lua 5.2 with整数のみ
- 15. stl remove_if with class member function result
- 16. JavaScriptフレーズ・マークアップwith javascript function
- 17. R data.table lapply with cut function
- 18. std :: function with non-static member functions
- 19. 関数の返り値ng repeat with ng repeat with function angularJS
- 20. LuaLaTeX with Archlinux
- 21. oracleパイプライン関数with with with with clause
- 22. Laravel Eloquent With()With()
- 23. Express with
- 24. 。nearest with with()
- 25. oracle with group with grouping with
- 26. Macbook with java with java with
- 27. Maven with Proguard with jar-with-dependencies
- 28. Select2 With Result With Result
- 29. TeamSpeak 3 Messages with java
- 30. ログインシステムwith nodeJS
私は可能な限りすべてのモジュールを互いに分離する[Luaモジュール](https://github.com/siffiejoe/lua-modjail)を作成しました。私はもはや自分では使用しませんが、おそらくあなたはそれが面白いと思うでしょう... – siffiejoe