Fix assets:create 404: form-urlencoded mot /apps/richdocuments/assets, intern CODE över HTTP

- lib/bridge.js createAssetLink: POST <nextcloudUrl>/apps/richdocuments/assets
  (utan index.php), Content-Type application/x-www-form-urlencoded med body
  path=<urlencoded>, path trimmad utan ledande slash (userFolder->get relativt
  filrot), OCS-APIRequest borttagen. Fel inkluderar statusCode + svarskropp.
- Intern collaboraUrl är HTTP: http://code:9980 (fallback http://<bridge-ip>:9980)
  i nc-collab-config default, .env.example, example-flows.json, docker-compose,
  install.sh och integrate-into-nodered.sh resolve_collabora_url.
- Publik WOPI-URL dokumenterad som https://docs.domain.name.
- package-lock.json för deterministisk form-data-install i Docker.
This commit is contained in:
dev
2026-08-22 21:27:02 +02:00
parent 9e5a7c0aeb
commit 6e02c2d31e
11 changed files with 332 additions and 38 deletions
+7 -6
View File
@@ -409,15 +409,16 @@ recreate_nodered_service() {
log "ExtraHosts (${extra}): $(docker inspect -f '{{json .HostConfig.ExtraHosts}}' "${NODERED_CONTAINER}")"
}
# COLLABORA_URL: https://code:9980 primärt, fallback https://<CODE-IP>:9980.
# COLLABORA_URL: intern CODE är HTTP — http://code:9980 primärt,
# fallback http://<CODE-IP>:9980.
# Aldrig http://127.0.0.1:9980 eller http://host.docker.internal:9980.
resolve_collabora_url() {
local url="${COLLABORA_URL:-https://code:9980}"
local url="${COLLABORA_URL:-http://code:9980}"
case "${url}" in
http://127.0.0.1:*|http://localhost:*|http://host.docker.internal:*|\
https://127.0.0.1:*|https://localhost:*|https://host.docker.internal:*)
warn "Otillåten COLLABORA_URL '${url}' — tvingar https://code:9980"
url="https://code:9980"
warn "Otillåten COLLABORA_URL '${url}' — tvingar http://code:9980"
url="http://code:9980"
;;
esac
@@ -427,8 +428,8 @@ resolve_collabora_url() {
ip="$(docker inspect -f '{{range $k,$v := .NetworkSettings.Networks}}{{$v.IPAddress}} {{end}}' "${CODE_CONTAINER}" 2>/dev/null | awk '{print $1}')"
[ -n "${ip}" ] || ip="${COLLABORA_IP:-}"
if [ -n "${ip}" ]; then
warn "'code' inte resolvbart från ${NODERED_CONTAINER} — fallback https://${ip}:9980"
url="https://${ip}:9980"
warn "'code' inte resolvbart från ${NODERED_CONTAINER} — fallback http://${ip}:9980"
url="http://${ip}:9980"
else
die "Varken 'code'-DNS eller CODE-IP tillgänglig — kan inte sätta COLLABORA_URL"
fi