Я пытаюсь получить страницу оплаты для рендеринга со стороны сервера.Я использую React для Интернета, мой сервер размещен через HTTPS, и я пытаюсь использовать IFrame для загрузки страницы оплаты поверх приложения реагирования.Так как мне нужно сделать вызов API для сервера, и я ДОЛЖЕН использовать заголовок для аутентификации, я вызываю API и возвращаемый им HTML, который я использую для свойства srcDoc для IFrame.
// example code
// in React
async example() {
const htmlContent = await makeAPICall();
// htmlContent is the html from response
this.setState({"html": htmlContent})
}
render() {
if (this.state.html) {
return (
<iframe
srcDoc = {this.state.html}
title, width, height
></iframe>
)
} else return null
}
Я использую полосу для сбора платежной информации.Пока я был в разработке, это работало нормально.Я вызываю API, асинхронно загружаю HTML в iframe как srcdoc и продолжаю в Iframe.Но в тот момент, когда я развернул в производстве с использованием живых ключей, этот Iframe не может чередовать загрузку информации о платеже, отображая только загадочное сообщение «Все платежи должны быть выполнены через HTTPS».Теперь мой сервер использует HTTPS, веб-сервер размещен на самом сервере, который общается через тот же источник через HTTPS, но по какой-то причине сам Iframe не может использовать Stripe для загрузки содержимого.
Я пытался возиться со свойствами Iframe (учитывая, что я не использую свойство src ), и я пока не нашел решения.Я застрял в производстве - блокировщик страницы оплаты.Я ценю всю помощь, которую я могу получить.
Спасибо
Я попытался воспроизвести эту проблему с помощью ngrok на моем локальном хосте.С подходом, которому я следовал, я не смог загрузить его, используя свойство srcdoc .Что сработало для меня, так это когда я дал URL для Iframe в свойстве src , но это не сработало для меня, потому что мне нужно передавать заголовок при каждом запросе, который я делаю.
* 1017Ожидаемая полоса для загрузки через HTTPS из того же источника с использованием Iframe и srcDoc, но это не удается сделать.