Как исправить ошибку декодирования json в флешке test_client (). Post ()?

Прекрасно работает для меня. Проверьте, что у вас может быть другое.

Пример 1: (ресурсы в src)

Шаги:

  1. Структура файла enter image description here [/g6]
  2. Код
    package com.stackoverflow.test;
    
    import java.net.URL;
    import javax.swing.*;  // Wild carded for brevity. 
                           // Actual code imports single classes
    public class Main {
        public static void main(String[] args) {
            SwingUtilities.invokeLater(new Runnable(){
                public void run() {
                    URL url = Main.class.getResource(
                                         "/resources/stackoverflow.png");
                    ImageIcon icon = new ImageIcon(url);
                    JFrame frame = new JFrame();
                    frame.add(new JLabel(icon));
                    frame.pack();
                    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    frame.setLocationRelativeTo(null);
                    frame.setVisible(true);
                }
            });
        }
    }
    
  3. [Щелкните правой кнопкой мыши по проекту] & rarr; [Экспорт] & rarr; [Runnable Jar File] & rarr; [Настроить конфигурацию запуска] enter image description here [/g7]
  4. Прибыль enter image description here [/g8]

FYI, та же настройка работает в eclipse просто отлично и


Пример 2: (ресурсы not в src - но в проекте)

Шаги:

  1. Файл Структура (ресурсы уведомлений выглядят как обычная папка) enter image description here [/g9]
  2. Что нам нужно сделать, это поместить ресурсы на путь сборки. То, что это делает, помещает все в папку (за исключением самой папки) на пути к классу. Щелкните правой кнопкой мыши по проекту и перейдите к [Путь сборки] & rarr; [Настройка пути сборки] enter image description here [/g10] На вкладке [Источники] в диалоговом окне выберите [Добавить папку] и в новом диалоговом окне выберите папку [resources] enter image description here [/g11]. Теперь содержимое папка ресурсов находится в пути сборки (обратите внимание на небольшой пакет в папке сейчас enter image description here [/g12]
  3. Новый код больше не использует префикс ресурсов для пути
    URL url = Main.class.getResource("/stackoverflow.png");
    
  4. То же, что и в шагах 3 и 4 сверху, и прибыль!

UPDATE

Настройка конфигурации запуска

Как правило, один раз вы запускаете класс (т. е. щелкните правой кнопкой мыши на классе и запустите в качестве приложения Java), будет настроена конфигурация запуска. Вам нужно будет установить ее как точку запуска в манифесте. Но вот как это сделать вручную.

Шаги:

  1. [Right Click Project] & rarr; [Свойства] & rarr; [Параметры запуска / отладки] enter image description here [/g13] Вы можете видеть, что у меня уже есть прогон configruation (который неявно задан из простого запуска класса). Но чтобы создать новый, выберите [New] & rarr; [Java Applica ]
  2. Создайте имя для запуска конфигурации и просмотра или введите основной класс запуска. В моем случае его класс com.stackoverflow.test.Main enter image description here [/g14]
  3. Теперь, когда вы экспортируете, как показано в приведенном выше примере, вы выбираете конфигурацию запуска enter image description here [/g15]
  4. Запустите банку, как показано выше.

EDIT

Результат проверки

Манифест:

Manifest-Version: 1.0
Rsrc-Class-Path: ./
Class-Path: .
Rsrc-Main-Class: com.stackoverflow.test.Main
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader

Извлеченная банка:

enter image description here [/g16]

-2
задан Jeff B 16 January 2019 в 01:17
поделиться

2 ответа

Неважно, оказалось, что это была другая ошибка - вызывал отдельный файл JSON и забыл удалить запятую ...

0
ответ дан Jeff B 16 January 2019 в 01:17
поделиться

рекомендую это вам

import json
with app.test_client() as c:
  test_call = c.post("api/signup/", 
                     data=json.dumps({'form_id': 'hi'}), 
                     content_type='application/json')
@app.route('api/signup', methods=['post'])
def signup():
    json = request.json
0
ответ дан gureuso 16 January 2019 в 01:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: