Foswiki: загрузка и скачивание тем без FTP

У меня есть вики Foswiki на сервере. Можно ли написать сценарий без FTP-доступа (по разным причинам я не могу его использовать):

  1. Загрузите викитекст темы, измените его локально, затем снова загрузите (перезаписывая тему)

  2. Загрузить вики-текст в новую тему

Я делал эти задачи вручную, но я хотел бы автоматизировать их. Я посмотрел на Foswiki API и несколько плагинов, но, похоже, ничего не способно сделать это.

Есть ли способ? (любой язык программирования)

2 ответа

Решение

Если у вас есть веб-доступ, вы можете удаленно управлять сценариями bin / view и bin / save из скрипта.

Взгляните на нашу цель загрузки BuildContrib для примера. Он получает ключ Strikeone и загружает оригинальную тему, чтобы восстановить любые данные формы. Затем он загружает текст темы, создавая новую версию. Он написан на Perl и использует LWP.

https://github.com/foswiki/distro/blob/master/BuildContrib/lib/Foswiki/Contrib/BuildContrib/Targets/upload.pm

Следующее (!) Не является правильным решением (конечно, существует хороший подход Foswiki), но если вы знаете Perl, вы можете сделать что-нибудь с:

  1. Установите Firefox
  2. установить дополнение к MozRepl
  3. Установите Perl-модуль https://metacpan.org/pod/WWW::Mechanize::Firefox

Теперь вы можете написать все, что можете сделать прямо из браузера, например, войти в Foswiki, нажимать кнопки, сохранять темы и т. Д. Недостаток - это не простой способ - вам нужно знать много деталей.

Сам использую эту технику для тестирования.

Другие вопросы по тегам