Как удалить автоматически добавляемые прокси подключений в XCC?

Я хочу сделать запрос ajax от IBM Connections XCC:

let api = 'https://my-server2/api.xml'
var xmlhttp = new XMLHttpRequest();

xmlhttp.onreadystatechange = () => {
    if (xmlhttp.readyState == XMLHttpRequest.DONE) 
       if (xmlhttp.status == 200) {
           console.log(xmlhttp.responseText)
       }else {
           console.log(`Error: ${xmlhttp.readyState}`)
       }
}

Результатом на вкладке сети является запрос к https://connections-host/communities/ajaxProxy/https/my-server2/api.xml, поэтому запрос передается через сервер подключений. Из-за этого я получаю пустой результат API, так как мне нужен авторизованный пользовательский сеанс. Моя идея была такова: пользователь вошел в свой браузер в приложении my-server2. Таким образом, когда я делаю ajax-запрос к my-server2, я могу получить информацию об API в его пользовательском контексте.

Итак, мой вопрос: как я могу обойти эти прокси?

Поскольку я его не устанавливаю, я предполагаю, что соединения манипулируют классом XMLHttpRequest следующим образом: https://gist.github.com/dewdad/8830348

Я хочу просмотреть его код, чтобы увидеть манипуляции с этим кодом в консоли, но он показывает только собственный код

window.XMLHttpRequest.prototype.open.toString()
    "function open() {
        [native code]
}"

person Daniel    schedule 09.11.2018    source источник


Ответы (1)


Connections использует прокси-сервер AJAX для управления тем, что отправляется на сайты/приложения, не относящиеся к Connections. Вы можете настроить его для своего сайта, чтобы разрешить отправку определенных методов, заголовков и файлов cookie на сайт, не относящийся к Connections. Я бы посмотрел этот документ по Connections 6.0 https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/secure/t_admin_config_ajax_proxy_feature.html

Думаю, это должно помочь тебе получить то, что ты хочешь.

person thardenb    schedule 10.11.2018