Webブラウザで他のホストからの要求を受け入れる場合は、CORSを実装する必要があります。これは他の大部分のアプリケーションフレームワークと同じようにStarcounterで行われます。
いずれのホストからもGET
リクエストまたは単純なPOST
リクエスト(標準ヘッダー付き)を受け入れるには、HTTPヘッダーハンドラーに応答ヘッダーAccess-Control-Allow-Origin: *
を追加するだけです。たとえば:
Handle.GET("/myapp/some-page",() => {
var page = new Json();
var response = new Response();
response.Resource = page;
response.Headers["Access-Control-Allow-Origin"] = "*";
return response;
});
は、サーバ(POST
、PUT
とDELETE
)に何かを変更するすべての要求を受け入れるには、あなたのPOST
、PUT
とDELETE
ハンドラで同じURIにOPTIONS
プリフライトリクエストハンドラを実装する必要があります。例えば:
Handle.PUT("/myapp/some-page",() => {
var page = new Json();
/* some logic ... */
var response = new Response();
response.Resource = page;
response.Headers["Access-Control-Allow-Origin"] = "*";
return response;
});
Handle.OPTIONS("/myapp/some-page",() => {
var response = new Response();
response.Resource = page;
response.Headers["Access-Control-Allow-Origin"] = "*";
response.Headers["Access-Control-Allow-Methods"] = "POST, PUT, GET, OPTIONS";
response.Headers["Access-Control-Allow-Headers"] = "*";
return response;
});
位置はCORSの詳細を読む - https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS - https://www.html5rocks.com/en/tutorials/cors/
'Handle.AddOutgoingHeader( "HeaderNameは"、 "headerValueの");'レスポンスオブジェクト場合ヘッダを設定するために使用することができます利用できません、 – miyconst