@@ -168,6 +168,7 @@ void protocol_html::send_json(boost::json::value&& model, size_t size_hint,
168168 BC_ASSERT (stranded ());
169169 response response{ status::ok, request.version () };
170170 add_common_headers (response, request);
171+ add_access_control_headers (response, request);
171172 response.set (field::content_type, from_media_type (json));
172173 response.body () = { std::move (model), size_hint };
173174 response.prepare_payload ();
@@ -180,6 +181,7 @@ void protocol_html::send_text(std::string&& hexidecimal,
180181 BC_ASSERT (stranded ());
181182 response response{ status::ok, request.version () };
182183 add_common_headers (response, request);
184+ add_access_control_headers (response, request);
183185 response.set (field::content_type, from_media_type (text));
184186 response.body () = std::move (hexidecimal);
185187 response.prepare_payload ();
@@ -192,6 +194,7 @@ void protocol_html::send_chunk(system::data_chunk&& bytes,
192194 BC_ASSERT (stranded ());
193195 response response{ status::ok, request.version () };
194196 add_common_headers (response, request);
197+ add_access_control_headers (response, request);
195198 response.set (field::content_type, from_media_type (data));
196199 response.body () = std::move (bytes);
197200 response.prepare_payload ();
@@ -205,6 +208,7 @@ void protocol_html::send_file(file&& file, media_type type,
205208 BC_ASSERT_MSG (file.is_open (), " sending closed file handle" );
206209 response response{ status::ok, request.version () };
207210 add_common_headers (response, request);
211+ add_access_control_headers (response, request);
208212 response.set (field::content_type, from_media_type (type));
209213 response.body () = std::move (file);
210214 response.prepare_payload ();
@@ -217,6 +221,7 @@ void protocol_html::send_span(span_body::value_type&& span,
217221 BC_ASSERT (stranded ());
218222 response response{ status::ok, request.version () };
219223 add_common_headers (response, request);
224+ add_access_control_headers (response, request);
220225 response.set (field::content_type, from_media_type (type));
221226 response.body () = std::move (span);
222227 response.prepare_payload ();
@@ -229,6 +234,7 @@ void protocol_html::send_buffer(buffer_body::value_type&& buffer,
229234 BC_ASSERT (stranded ());
230235 response response{ status::ok, request.version () };
231236 add_common_headers (response, request);
237+ add_access_control_headers (response, request);
232238 response.set (field::content_type, from_media_type (type));
233239 response.body () = std::move (buffer);
234240 response.prepare_payload ();
@@ -238,19 +244,6 @@ void protocol_html::send_buffer(buffer_body::value_type&& buffer,
238244// Utilities.
239245// ----------------------------------------------------------------------------
240246
241- bool protocol_html::is_allowed_origin (const fields& fields,
242- size_t version) const NOEXCEPT
243- {
244- // Allow same-origin and no-origin requests.
245- // Origin header field is not available until http 1.1.
246- const auto origin = fields[field::origin];
247- if (origin.empty () || version < version_1_1)
248- return true ;
249-
250- return options_.origins .empty () || system::contains (options_.origins ,
251- network::config::to_normal_host (origin, default_port ()));
252- }
253-
254247std::filesystem::path protocol_html::to_path (
255248 const std::string& target) const NOEXCEPT
256249{
0 commit comments