ColdFusion 10の新しい組み込みREST APIを使用しています。ステータスコード201(Created)を返したいと思います。私は最初にここで説明したRestSetResponse()アプローチを試しました:http://www.adobe.com/devnet/coldfusion/articles/restful-web-services.html。関数のreturntypeを "void"に設定することを強制する点を除いて、うまくいきます。 "void"の問題は、例外をスローするたびに適切なJSONエラーメッセージが返されなくなることです。この例外をスローColdFusion 10 REST API:RestSetResponse()を使用せずにステータスコード201を設定する方法
:RestSetResponseを使用するために必要とされる(
HTTP/1.1 400 Bad Request
Content-Type: application/json
{"Message":"Validation error."}
しかし、戻り値のは、 "無効" のとき:returntypeには、 "構造体" であるとき
<cfthrow errorcode="400" message="Validation error." />
はきれいにフォーマットJSONを返します。 ()、レスポンスは醜いHTMLレスポンスです
このため、私はreturntype "struct"を使ってRestSetResponse()をあきらめて、これを試してみました:
<cfheader statusCode="201" statusText="Created" />
しかし、動作しません。 ColdFusionはstatusCodeを上書きし、成功した場合は常に200(OK)を返します。関数のreturntypeを "void"に設定せずにステータスコードを201に変更する方法を知っている人はいますか?
[ここ](http://www.adobe.com/devnet/coldfusion/articles/restful-web-services.html#articlecontentAdobe_numberedheader_3)に記載されているように、レスポンス構造体にカスタムコンテンツを指定することはできませんか? – imthepitts
私はそれを行うことはできません。私の質問で述べたように、RestSetResponse()を使うにはreturntypeが "void"である必要があります。これはもはや例外の場合に適切なJSONレスポンスを尊重しません。 –