从一个服务器把表格以dtable格式导出到另一台服务器的seatable网页中,不论是运行原有的python脚本,还是新建python脚本,自动获取server_url = context.server_url 这一步,获取的还是原来的服务器的地址,而不是新服务器的地址。
看到官方文档说"seatable-python-runner 的服务需要直接在宿主机上运行",而我在服务器2的dtable_web_settings.py是直接填写的前一台服务器1的SEATABLE_FAAS_URL地址,是不是因为seatable-python-runner绑定了原来的主机,所以context.server_url读取的就是原来服务器的地址?
果然是这个原因!!
建议python runner下个版本可以支持多服务器复用指定服务器上的seatable_faas_scheduler:
服务器1里的seatable_faas_scheduler_settings.py里指定了服务器1的seatalbe地址,
DTABLE_WEB_SERVICE_URL = 'https://seatable.server1.com'
给下个版本建议,在服务器2不安装seatable_faas_scheduler的情况下,配置
SEATABLE_FAAS_URL = ‘http://faas.server1.com’ # seatable-faas-scheduler 的地址
SEATABLE_FAAS_AUTH_TOKEN = ‘xxxxxxx’
之后,依然可以正确读取server_url = context.server_url,只需要在seatable_faas_scheduler里把发送请求的url地址(服务器2的seatable地址 ‘https://seatable.server2.com’)重新写到context.server_url就行。