Что означает скрипт из источника 'undefined' в CSP? - PullRequest
0 голосов
/ 30 апреля 2018

Я недавно перешел с stripe.js v2 на stripe.js v3 / elements. В рамках этого я получаю новые ошибки CSP. Похоже, они не вызывают сбоев в полосе, но я бы хотел их понять:

Content Security Policy: The page's settings blocked the loading of a resource at self ("script-src"). Source: ;undefined.
elements-inner-card-15fb9df8718486f330c3990dde96bfd7.html:1

Content Security Policy: The page's settings blocked the loading of a resource at self ("script-src"). Source: ;undefined.
controller-3984d4085075df939703ec0d22159407.html:1

И elements-inner-card-15fb9df8718486f330c3990dde96bfd7.html, и controller-3984d4085075df939703ec0d22159407.html от полосы. Что я не понимаю, это script-src из undefined?

  • Как может script-src быть undefined? Элемент <script> обычно имеет src, если нет, то unsafe-inline. Что означает undefined? 1018 *

  • Как мне изменить мой CSP, чтобы разрешить Stripe v3?

Редактировать : ошибка возникает только в Firefox при использовании LastPass. Chrome не отображает эту ошибку, а также Firefox с отключенными надстройками.

1 Ответ

0 голосов
/ 04 октября 2018

Для тех, кто оказался здесь, как я, решение отличалось от «отключения аддонов».

Контекст: я использую полосу в React и использую реагировать на полосу , чтобы сделать это. Ошибка CSP произошла, когда я делал это:

<form>
    {loading ? <Spinner /> : <CardElement /> }
</form>

Похоже, что динамический монтаж / демонтаж не очень хорошо там. Я изменил это так:

<form>
    <div className={classnames({hidden: !loading})}><Spinner /></div>
    <div className={classnames({hidden: loading})}><CardElement /></div>
</form>

С соответствующим CSS для hidden, конечно, и ошибка исчезла.

Надеюсь, это поможет некоторым потерянным душам:)

...