Надеюсь, это сработает. Удалите URL и сведения о браузере веб-драйвера в модулях
class_name: AcceptanceTester
modules:
enabled:
- WebDriver
- Db
- Filesystem
config:
PhpBrowser:
url: 'http://amazon-ce.localhost.tom/'
WebDriver:
url: 'http://amazon-ce.localhost.tom/'
browser: chrome
Db:
dsn: 'mysql:dbname=myDb;host=127.0.0.1'
user: 'root'
password: ''
Найденный им где-нибудь давным-давно и он работает отлично!
let payload = {
key: "val",
key2: "val2"
};
let url = "path/to/api.php";
let form = $('<form>', {'method': 'POST', 'action': url}).hide();
$.each(payload, (k, v) => form.append($('<input>', {'type': 'hidden', 'name': k, 'value': v})) );
$('body').append(form);
form.submit();
form.remove();
Вложение Довольного Расположения , кажется, работает на меня:
self.set_header("Content-Type", "application/json")
self.set_header("Content-Disposition", 'attachment; filename=learned_data.json')
application/octet-stream
у меня было что-то подобный случай со мной с JSON для меня на сторона сервера , я устанавливал заголовок на сам set_header ("Тип контента", " application/json") однако, когда я изменил его на:
self.set_header("Content-Type", "application/octet-stream")
Это автоматически загрузило его.
Также знают, что для файла для тихого хранения суффикса .json Вам будет нужно к нему на заголовке имени файла:
self.set_header("Content-Disposition", 'filename=learned_data.json')
Короче говоря, нет более простого способа. Вам нужно сделать еще один запрос к серверу, чтобы показать файл PDF. Хотя есть несколько альтернатив, но они не идеальны и не будут работать во всех браузерах:
Я думаю, что лучший подход - использовать комбинацию. Ваш второй подход кажется элегантным решением, когда задействованы браузеры.
Так что в зависимости от того, как сделан звонок. (будь то браузер или вызов веб-службы), вы можете использовать их комбинацию, отправив URL-адрес в браузер и отправив необработанные данные любому другому клиенту веб-службы.