davla
09/08/2022, 2:20 PMzackster
09/08/2022, 2:24 PMdavla
09/08/2022, 2:27 PMdavla
09/08/2022, 2:27 PMdavla
09/08/2022, 2:54 PMAccess to XMLHttpRequest at '<https://api.test:8080/v3/organisations/>' from origin '<https://app.test>' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
with the endpoint GET request returning a 500 status with a ‘Failed to load response data: No data found for resource with given identifier’davla
09/08/2022, 2:58 PMaccess-control-allow-headers: Origin,User-Agent,Authorization,Referrer,X-Requested-With,Accept,X-CSRF-Token,X-HTTP-Method-Override,Content-Type
access-control-allow-methods: GET,POST,OPTIONS
access-control-allow-origin: *
allow: GET,POST,OPTIONS
The following GET request then blows up with the 500 error and a CORS error. If I replay the XHR (via Chrome devtools) the GET request works.davla
09/08/2022, 2:59 PM"cfengine":"lucee@5.3.9.141"
to this:
"cfengine":"lucee@5.3.9.160"
breaks the applicationzackster
09/08/2022, 3:00 PMzackster
09/08/2022, 3:02 PMzackster
09/08/2022, 3:03 PMdavla
09/08/2022, 3:03 PMdavla
09/08/2022, 3:40 PMdavla
09/08/2022, 3:40 PMdavla
09/08/2022, 3:41 PMdavla
09/08/2022, 3:47 PMzackster
09/08/2022, 3:50 PMdavla
09/08/2022, 3:52 PMdavla
09/08/2022, 3:55 PMaccess-control-allow-headers: Origin, Authorization, X-CSRF-Token, X-Requested-With, Content-Type, X-HTTP-Method-Override, Accept, Referrer, User-Agent
access-control-allow-methods: GET,POST
access-control-allow-origin: *
allow: GET,POST
content-encoding: gzip
content-language: en-GB
content-type: application/json;charset=utf-8
date: Thu, 08 Sep 2022 15:51:18 GMT
x-time-in-cache-check: 0
x-time-in-cache-save: 0
x-time-in-ontaffyrequest: 336
x-time-in-ontaffyrequestend: 0
x-time-in-parse: 0
x-time-in-resource: 373
x-time-in-serialize: 0
x-time-in-taffy: 0
davla
09/08/2022, 3:59 PMcontent-encoding: gzip
content-length: 4072
content-type: text/html;charset=UTF-8
date: Thu, 08 Sep 2022 15:58:36 GMT
davla
09/08/2022, 4:10 PMzackster
09/08/2022, 4:13 PMdavla
09/08/2022, 4:14 PMzackster
09/08/2022, 4:15 PMdavla
09/08/2022, 4:16 PMzackster
09/08/2022, 4:16 PMzackster
09/08/2022, 4:17 PMzackster
09/08/2022, 4:18 PMdavla
09/08/2022, 4:18 PMzackster
09/08/2022, 4:18 PMzackster
09/08/2022, 4:19 PMzackster
09/08/2022, 4:20 PMdavla
09/08/2022, 4:20 PMzackster
09/08/2022, 4:21 PMdavla
09/08/2022, 4:21 PMzackster
09/08/2022, 4:21 PMdavla
09/08/2022, 4:21 PMzackster
09/08/2022, 4:22 PMzackster
09/08/2022, 4:27 PMdswitzer
09/08/2022, 4:50 PMx-time
headers.
I suspect the issue is Taffy is setting the headers and then those changes are being reset. It might be related to how Taffy is setting the headers, or perhaps a change of behavior in Lucee.zackster
09/08/2022, 4:56 PMzackster
09/08/2022, 4:59 PMzackster
09/08/2022, 5:00 PMdavla
09/08/2022, 5:18 PMzackster
09/08/2022, 5:20 PMAndreas
09/08/2022, 8:08 PMdavla
09/08/2022, 8:12 PMAndreas
09/08/2022, 8:13 PMzackster
09/12/2022, 8:25 AMdavla
09/12/2022, 8:31 AMdavla
09/12/2022, 8:32 AMzackster
09/12/2022, 8:32 AMdavla
09/12/2022, 8:33 AMzackster
09/12/2022, 8:33 AMzackster
09/12/2022, 8:34 AMdavla
09/12/2022, 8:34 AMzackster
09/12/2022, 8:35 AMdavla
09/12/2022, 8:35 AMzackster
09/12/2022, 8:35 AMserver.out.txt
from commandbox?davla
09/12/2022, 8:46 AMorg.tuckey.web.filters.urlrewrite.SetAttribute: set Set response-header Access-Control-Allow-Origin null called
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: setting response header
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: set Set response-header Access-Control-Allow-Methods null called
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: setting response header
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: set Set response-header Access-Control-Allow-Headers null called
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: setting response header
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: set Set response-header Access-Control-Allow-Credentials null called
[DEBUG] org.tuckey.web.filters.urlrewrite.SetAttribute: setting response header
In fact, that is happening on all of the api endpoints. Here’s the tuckey rule set for CORS:
<rule>
<note>
<http://enable-cors.org>
</note>
<condition type="header" name="Origin">.*</condition>
<condition type="header" name="Access-Control-Request-Method">.*</condition>
<condition type="header" name="Access-Control-Request-Headers">.*</condition>
<set type="response-header" name="Access-Control-Allow-Origin"></set>
<set type="response-header" name="Access-Control-Allow-Methods"></set>
<set type="response-header" name="Access-Control-Allow-Headers"></set>
<set type="response-header" name="Access-Control-Allow-Credentials"></set>
</rule>
Setting blank responses seems a little odd - should those empty headers contain ‘*’?davla
09/12/2022, 8:46 AMdavla
09/13/2022, 7:53 AMzackster
09/13/2022, 8:00 AMdavla
09/13/2022, 8:01 AMdavla
09/13/2022, 8:01 AMdavla
09/13/2022, 8:02 AMzackster
09/13/2022, 8:37 AMdavla
09/13/2022, 8:41 AMzackster
09/13/2022, 8:43 AMdavla
09/13/2022, 8:53 AMzackster
09/13/2022, 8:54 AMzackster
09/13/2022, 8:54 AMdavla
09/13/2022, 8:54 AMzackster
09/13/2022, 8:55 AMdavla
09/13/2022, 8:56 AM