Несогласованное сопоставление полей MongoDB при поиске записей ⇐ Python
Несогласованное сопоставление полей MongoDB при поиске записей
извините, если название немного вводит в заблуждение/неясно.
У меня возникла проблема при использовании MongoDB. Для контекста я запрашиваю действующий API, и он возвращает мне URL-адрес изображения, действительный в течение 5 минут.
Затем я вставил этот фрагмент данных в свою базу данных и использовал код:
def Insert_record(данные): для записи в data.get('value', []): идентификатор = запись.get('ID') запись['updated_at'] = datetime.now() apg_collection.update_one({'ID': id}, {'$set': запись}, upsert=True) После этого пользователь сможет получить доступ к этому URL-адресу, используя конечную точку:
@app.route('/apg/') защита get_apg_image (ID): вернуть перенаправление (get_apg (ID), код = 302) Это работает нормально, но в этом методе возникает проблема:
защита get_apg (ID): """ Получите apg для указанного идентификатора. """ запись = apg_collection.find_one({"ID": ID}) если записать: вернуть apg['ImageLink'] возврат Нет
Использование этого метода без других частей кода приведет к сбою, и я понял, что этот метод вернет мне URL-адрес с истекшим сроком действия, чего не должно быть, поскольку я только что обновил его.
Посмотрев глубже, я обнаружил, что при использовании перенаправления часть URL-адреса содержит правильное время:
...2023-10-28/21-25/1001_2118_20231028212500_501011.jpg?...
Однако, просто используя метод get_apg, я получу
.../2023-10-03/00-05/1001_2358_20231003000532_565750?... Я пробовал проверить дубликаты записей и любые состояния гонки, но мне не удалось решить эту проблему. Кто-нибудь знает, почему возникает эта проблема?
Извините за долгое чтение, спасибо.
извините, если название немного вводит в заблуждение/неясно.
У меня возникла проблема при использовании MongoDB. Для контекста я запрашиваю действующий API, и он возвращает мне URL-адрес изображения, действительный в течение 5 минут.
Затем я вставил этот фрагмент данных в свою базу данных и использовал код:
def Insert_record(данные): для записи в data.get('value', []): идентификатор = запись.get('ID') запись['updated_at'] = datetime.now() apg_collection.update_one({'ID': id}, {'$set': запись}, upsert=True) После этого пользователь сможет получить доступ к этому URL-адресу, используя конечную точку:
@app.route('/apg/') защита get_apg_image (ID): вернуть перенаправление (get_apg (ID), код = 302) Это работает нормально, но в этом методе возникает проблема:
защита get_apg (ID): """ Получите apg для указанного идентификатора. """ запись = apg_collection.find_one({"ID": ID}) если записать: вернуть apg['ImageLink'] возврат Нет
Использование этого метода без других частей кода приведет к сбою, и я понял, что этот метод вернет мне URL-адрес с истекшим сроком действия, чего не должно быть, поскольку я только что обновил его.
Посмотрев глубже, я обнаружил, что при использовании перенаправления часть URL-адреса содержит правильное время:
...2023-10-28/21-25/1001_2118_20231028212500_501011.jpg?...
Однако, просто используя метод get_apg, я получу
.../2023-10-03/00-05/1001_2358_20231003000532_565750?... Я пробовал проверить дубликаты записей и любые состояния гонки, но мне не удалось решить эту проблему. Кто-нибудь знает, почему возникает эта проблема?
Извините за долгое чтение, спасибо.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Android Studio зависает при навигации/поиске использования/поиске файлов Java
Anonymous » » в форуме Android - 0 Ответы
- 143 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Несогласованное поведение рендеринга при тестировании глубины OpenGL на разных видеокартах
Anonymous » » в форуме C++ - 0 Ответы
- 33 Просмотры
-
Последнее сообщение Anonymous
-