"Mercure、Symfony和Vue之间存在兼容性问题"
P粉023650014
P粉023650014 2023-08-26 12:58:16
0
1
397
<p>我在使用vue和symfony配置mercure时遇到了问题。我正在使用附加在symfony cli中的mercure hub。在.env文件中,我将mercure的url更改为使用http,因为这会导致证书错误(由symfony提供)。</p> <p><strong>.env</strong></p> <pre class="brush:php;toolbar:false;">MERCURE_URL=http://localhost:8000/.well-known/mercure MERCURE_PUBLIC_URL=http://localhost:8000/.well-known/mercure MERCURE_JWT_SECRET="!ChangeMe!"</pre> <p>当我在浏览器中打开symfony应用程序(例如http://localhost:8000),并在控制台中添加以下脚本进行测试:</p> <pre class="brush:php;toolbar:false;">const eventSource = new EventSource('http://localhost:8000/.well-known/mercure?topic=' + encodeURIComponent('http://example.com/books/1')); eventSource.onmessage = event =&gt; { // 每次服务器发布更新时都会调用此函数 console.log(JSON.parse(event.data)); }</pre> <p>它可以工作,我可以在其他选项卡中发布一些更改。 但是,当我在位于http://localhost:8080的vue应用程序中执行相同操作时,控制台会显示以下错误:</p> <pre class="brush:php;toolbar:false;">Access to resource at 'http://localhost:8000/.well-known/mercure?topic=http://example.com/books/1' from origin 'http://localhost:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.</pre> <p>另外,我还有两个问题:</p> <ol> <li>为什么当我将jwt令牌粘贴到env中时,会出现401错误,但使用上述jwt令牌时却没有?</li> <li>为什么我无法使用https来使用symfony serve?我遇到了“TransportException: fopen(): Unable to locate certificate CN”错误。</li> </ol></p>
P粉023650014
P粉023650014

最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!