2016-06-17 15 views
1

RESTのドキュメントがとてもシンプルで、作成したコードがREST経由でアクセスしようとしないと正常に動作するように見えるため、RESTがColdFusionで動作していない

hello.cfc:

component rest="true" restpath="restTest"{ 
    remote string function sayHello() httpMethod="get"{ 
     return "Hello World"; 
    } 
} 

サービスマッピング:私は変更せずにノーと両方のデフォルトはいを試してみました

CFIDE Service Mapping

テストページ:

<html> 
<head> 
    <title>REST Test</title> 
</head> 
<body> 
    Calling service as an object:<br> 
    <cfset restTest = new hello() /> 
    <cfdump var="#restTest.sayHello()#" /> 
    <br> 

    Calling service via http:<br> 
    <cfhttp url="http://localhost/rest/restTest" result="restResult" method="GET" /> 
    <cfdump var="#restResult#" /> 
</body> 
</html> 

結果:

REST result

+0

を読み、 CF11はRESTで修正されません。 2016の仕組みはまだ分かりません。しかし、私はTaffyに移りたいです。それは非常に簡単で動作します。 –

+0

私たちはCF10を使用しており、最終的に2016年にアップグレードしています。自分の道があれば、ColdFusionをまったく使用しません。 –

+0

https://bugbase.adobe.com/にバグを記録することができますか?それから見ていきます。 –

答えて

0

あなたは、コネクタ/ Webサーバ経由のコールを向けることなく、アクセスしてみましたか? /のcfusion/wwwrootに/内部のプロジェクトをキープして、 http://localhost:8500/rest/restTest

サンプルテストはまた、あなたが間違っを使用しているよう

enter image description here

+0

テストページも私のために働いていましたが、私はコネクターを設定してみてはいけません。私は "http:// localhost:8500/rest/restTest"をURLとして使用しました。 あなたのコネクタの設定に問題があると思われます。コネクター/ウェブサーバーなしで試してみてください。 –

+0

URLにアクセスするために、curl、wget、複数のブラウザのアドレスバーに直接アクセスするなど、さまざまな方法で試しました。それはいつも "204 No Content"で戻ってくる。 –

0

に思えURLを変更した後、私のために働いたブラウザ経由でアクセスしてみてくださいRESTサービスにHTTPリクエストを行う際のURL。だからあなたの場合には、正しいURLがあるべき

http://{domain}/rest/{service mapping name}/{component level rest path}/{function level restpath}

:URLは次のようにする必要があります詳細については

http://localhost/rest/api/restTest

CF10上の問題があり、このhttp://www.adobe.com/devnet/coldfusion/articles/restful-web-services.html

+0

そのリンクは私が学び、私がしたコードを書いたものです。別のユーザーが示唆しているように、私が使用したURLは、デフォルトのアプリケーションとして設定したので正しいはずです。これをデフォルトに設定すると、提案するURLは404エラーを返します。私がそれをもはやデフォルトにしないようにすると、それは以前のように私に204の応答を与えます。 –

関連する問題