Как создать форму публикации HTML API, для которой требуется токен сеанса? - PullRequest
0 голосов
/ 26 апреля 2019

Я хотел бы создать форму на своем веб-сайте, которая позволит пользователям создавать заявку в службу поддержки Эта форма должна POST API, что хорошо, но у нее есть один параметр, с которым я борюсь. Каждый раз при отправке формы требуется новый токен.

Я могу создать новый токен, но я не уверен, как добавить его в форму в качестве скрытого поля. Я надеюсь, что приведенный ниже код поможет вам понять и помочь мне. Спасибо за ваше время и усилия.

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

Эта форма генерирует новый токен

<form action="api/v1/helpdesk/authenticate" method="post">>
        <input type="hidden" name="username" value="demo"/>
        <input type="hidden" name="password" value="demo"/>
        <input type="submit" value="Submit">
</form>

Это результат запроса формы / публикации, который генерирует токен, нам нужен только токен

{
    "token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvY29tbXVuaWNhdGlvbi50ZWxzZW5zZS5uZXQuemFcL2VtYWlsXC9wdWJsaWNcL2FwaVwvdjFcL2F1dGhlbnRpY2F0ZSIsImlhdCI6MTU1NjMwNTc2OCwiZXhwIjoxNTU2MzA2MDA4LCJuYmYiOjE1NTYzMDU3NjgsImp0aSI6IkNkZGF1QnF2bG1IZjRMdGIiLCJzdWIiOjIsInBydiI6Ijg3ZTBhZjFlZjlmZDE1ODEyZmRlYzk3MTUzYTE0ZTBiMDQ3NTQ2YWEifQ.iolZNRZWdm3ngMF84XXHd0wRSeqyUze8jnIWZis0v3s",
    "user_id": {
        "id": 2,
        "user_name": "admin",
        "first_name": "System",
        "last_name": "Administrator",
        "gender": 0,
        "email": "admin@telsense.co.za",
        "ban": 0,
        "active": 1,
        "is_delete": 0,
        "ext": "",
        "country_code": 0,
        "phone_number": "",
        "mobile": null,
        "agent_sign": "",
        "account_type": "",
        "account_status": "",
        "assign_group": 1,
        "primary_dpt": 1,
        "agent_tzone": "16",
        "daylight_save": "",
        "limit_access": "",
        "directory_listing": "",
        "vacation_mode": "",
        "company": "",
        "role": "admin",
        "internal_note": "",
        "profile_pic": "https://secure.gravatar.com/avatar/76cea1d3133cd2141b3d9efcfa1be0b8?s=80&r=g&d=identicon",
        "created_at": "2019-04-19 13:00:46",
        "updated_at": "2019-04-23 20:46:13",
        "user_language": null
    }
}

Это форма для создания новой заявки

<form action="api/v1/helpdesk/create" method="post">>
        <input type="hidden" name="token" value="dynamically created above"/>
        <input type="email" name="Email Address"/>
        <input type="text" name="Subject"/>
        <input type="text" name="Message"/>
        <input type="submit" value="Submit">
</form>

Я хотел бы иметь возможность использовать только форму выше, чтобы создать тикет, который будет автоматически генерировать токен, а затем отправлять. Я надеюсь, что все было объяснено хорошо и легко понять мои цели. Еще раз спасибо.

...