Переадресация URL через API Cloudflare - PullRequest
0 голосов
/ 12 ноября 2018

Я пытаюсь создать правило страницы, используя API Cloudflare для пересылки http в https.К сожалению, я не думаю, что документация на 100% ясна о том, как это сделать.Вот объект JSON, который я сейчас передаю телу POST:

{
  "targets": [
    {
      "target": "url",
      "constraint": {
        "operator": "matches",
        "value": "http://exampletest.com/*"
      }
    }
],
  "actions": [{
    "id": "forwarding_url",
    "value": "https://exampletest.com/$1"
  }]
}

, а вот сообщение, которое я получаю:

{
"success": false,
"errors": [
    {
        "code": 1004,
        "message": "Page Rule validation failed: See messages for details."
    }
],
"messages": [
    {
        "code": 1,
        "message": ".settings[0].url: This value should not be blank.",
        "type": null
    },
    {
        "code": 2,
        "message": ".settings[0].statusCode: This value should not be blank.",
        "type": null
    }
],
"result": null

}

Таким образом, мне кажется, что где-то должен быть объект настроек, но при любом способе добавления настроек я получаю одно и то же сообщение.Кто-нибудь знает, что я здесь делаю не так?Вот документация Cloudflare по этому вопросу.Не уверен, что я что-то упустил:

https://api.cloudflare.com/#page-rules-for-a-zone-create-page-rule

1 Ответ

0 голосов
/ 12 ноября 2018

На самом деле, только что понял это. Похоже, это правильный формат:

{
  "targets": [
    {
      "target": "url",
      "constraint": {
        "operator": "matches",
        "value": "http://exampletest.com/*"
      }
    }
  ],
  "actions": [
    {
      "id": "forwarding_url",
      "value": {
        "url": "https://www.exampletest.com/$1",
        "status_code": 301
      }
    }
  ]
}
...