Если вы не используете некоторые недавно стандартизированные заголовки HTTP для разрешения междоменных запросов, ваш виджет сможет отправлять запросы AJAX только на example.com
независимо от того, откуда веб-сайт загружает скрипт.
Есть несколько вариантов, как обойти это.
Вы можете использовать тег <script>
вместо запросов AJAX. Просто вы динамически добавляете тег script с элементом src, указывающим на widget.myservice.com/somehting
, и он загружает сценарий, который может содержать данные для вашего виджета.
Или вы можете распространять прокси на стороне сервера, который будет делать запросы от example.com
до widget.myservice.com
и передавать ответ клиенту.
Или вы можете использовать некоторые новые заголовки HTTP для кросс-браузерных запросов, но вы будете ограничены только новейшими браузерами. Google это.