Разбор.Инициализация вызывает исключение ввода-вывода с помощью Parse .NET SDK на .NET Core 2.2, размещенного на Heroku

#c# #heroku #parse-platform #.net-core #back4app

#c# #heroku #платформа синтаксического анализа #.net-core #back4app

Вопрос:

Следующий код

 ParseClient.Initialize (new ParseClient.Configuration
{
    ApplicationID = "APPID",
    Key = ".NET KEY",
    ServerURI = "SERVER URL"
});
  

выдает System.IO.IOException: The file '/app/heroku_output/[HEROKU APP NAME]' already exists.

Трассировка стека:

 at System.IO.FileSystem.CreateDirectory(String fullPath)
at System.IO.Directory.CreateDirectory(String path)
at Parse.Internal.Utilities.StorageManager.get_PersistentStorageFileWrapper()
at Parse.Common.Internal.StorageController..ctor()
at Parse.Core.Internal.ParseCorePlugins.get_StorageController()
at Parse.Core.Internal.ParseCorePlugins.get_CurrentUserController()
at Parse.Core.Internal.ParseCorePlugins.<get_SubclassingController>b__54_0()
at Parse.Core.Internal.ObjectSubclassingController.RegisterSubclass(Type type)
at Parse.ParseClient.Initialize(Configuration configuration)
at api.Startup.ConfigureServices(IServiceCollection services) in /tmp/build_ee0c61a720b09ce072787bbc64b4001d/Startup.cs:line 50
  

Комментарии:

1. Какой URL-адрес сервера вы используете?

2. @nataliec Я использую https://parseapi.back4app.com/ Все это работает локально, но не на Heroku.

Ответ №1:

Heroku не позволяет ничего записывать в файловую системуhttps://help.heroku.com/K1PPS2WM/why-are-my-file-uploads-missing-deleted

Комментарии:

1. Спасибо за ваш ответ, но я не думаю, что здесь дело в этом. На странице, на которую вы ссылаетесь, указано только, что записанные файлы удаляются при переработке dyno, а не то, что запись в файловую систему запрещена. В этом случае, без моего точного ведома, бьюсь об заклад, он пытается сохранить какое-то состояние сеанса, следовательно, это происходит в методе init, и нет проблем с переработкой этих файлов, поскольку метод init выполняется при каждом запуске.

2. Не могли бы вы, пожалуйста, поделиться примером на Github с воспроизведением ошибки?