単純なAPI RAMLファイルを1つのGETで作成しました。パラメータは必要なく、単純なペイロードを返します。私はそれをプロジェクトのAnypoint Studio(先週の最新)に正しく引っ張って、ローカルでプロジェクトを作成して実行しました。私は前提3.8.3で私はアーカイブし、これを正常に展開したミュールランタイムを持っています。適切な.txtファイルがある/ appsディレクトリに表示され、Mule Mgmt Consoleで私のサーバー上に配備されたアプリケーションとして表示されます。私はちょうどそれを正しく呼び出すことができないのですか?あなたはMuleランタイムでデプロイされたAPIKitプロジェクトでそれを実行できますか?私の簡単なセットアップは以下の通りで、Run and DebugモードのAnypointスタジオで(もちろん)動作します。APIキートプロジェクトをMule 3.8.3ランタイムAPIゲートウェイにデプロイしました
私は私のURLの罰金としてhttp://localhost:8081/api/testthisを呼び出すが、私は、私はこれを展開し、私のmulesoftサーバーに移動して、IP http://x.x.x.x:8081/api/testthisが戻ったばかりのペイロードを取得することを呼び出すときには、何のリスナーを示しません。私はステップや構成や何かを欠いている必要があります、私はちょうど問題を見つけるために自分のDOCやSOのサイトを検索することはできません。
を展開示しており、ここで
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:apikit="http://www.mulesoft.org/schema/mule/apikit" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:spring="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/apikit
http://www.mulesoft.org/schema/mule/apikit/current/mule-apikit.xsd
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
<http:listener-config name="testapi-httpListenerConfig" host="0.0.0.0" port="8081" doc:name="HTTP Listener Configuration"/>
<apikit:config name="testapi-config" raml="testapi.raml" consoleEnabled="false" doc:name="Router"/>
<flow name="testapi-main">
<http:listener config-ref="testapi-httpListenerConfig" path="/api/*" doc:name="HTTP"/>
<apikit:router config-ref="testapi-config" doc:name="APIkit Router"/>
<exception-strategy ref="testapi-apiKitGlobalExceptionMapping" doc:name="Reference Exception Strategy"/>
</flow>
<flow name="testapi-console">
<http:listener config-ref="testapi-httpListenerConfig" path="/console/*" doc:name="HTTP"/>
<apikit:console config-ref="testapi-config" doc:name="APIkit Console"/>
</flow>
<flow name="get:/testthis:testapi-config">
<set-payload value="[ {"code": "MyCode1", "name" : "My Code 1", "ID" : "1111" }, {"code": "MyCode2", "name" : "My Code 2", "ID" : "2222" } ]" doc:name="Set Payload"/>
</flow>
<apikit:mapping-exception-strategy name="testapi-apiKitGlobalExceptionMapping">
<apikit:mapping statusCode="404">
<apikit:exception value="org.mule.module.apikit.exception.NotFoundException" />
<set-property propertyName="Content-Type" value="application/json" doc:name="Property"/>
<set-payload value="{ "message": "Resource not found" }" doc:name="Set Payload"/>
</apikit:mapping>
<apikit:mapping statusCode="405">
<apikit:exception value="org.mule.module.apikit.exception.MethodNotAllowedException" />
<set-property propertyName="Content-Type" value="application/json" doc:name="Property"/>
<set-payload value="{ "message": "Method not allowed" }" doc:name="Set Payload"/>
</apikit:mapping>
<apikit:mapping statusCode="415">
<apikit:exception value="org.mule.module.apikit.exception.UnsupportedMediaTypeException" />
<set-property propertyName="Content-Type" value="application/json" doc:name="Property"/>
<set-payload value="{ "message": "Unsupported media type" }" doc:name="Set Payload"/>
</apikit:mapping>
<apikit:mapping statusCode="406">
<apikit:exception value="org.mule.module.apikit.exception.NotAcceptableException" />
<set-property propertyName="Content-Type" value="application/json" doc:name="Property"/>
<set-payload value="{ "message": "Not acceptable" }" doc:name="Set Payload"/>
</apikit:mapping>
<apikit:mapping statusCode="400">
<apikit:exception value="org.mule.module.apikit.exception.BadRequestException" />
<set-property propertyName="Content-Type" value="application/json" doc:name="Property"/>
<set-payload value="{ "message": "Bad request" }" doc:name="Set Payload"/>
</apikit:mapping>
</apikit:mapping-exception-strategy>
</mule>
があり、これはMMCが、それは私たちの1つのdevのサーバーにデプロイ見ている方法です。私はプロジェクトを作成するために使用さ
RAML:
#%RAML 0.8
title: mmctest
version: 1.0
/testthis:
get:
queryParameters:
code:
displayName: "Code"
type: string
description: "The code to pass through on a querystring"
required: false
responses:
200:
body:
application/json:
example: |
[ {"code": "MyCode1", "name" : "My Code 1", "ID" : "1111" }, {"code": "MyCode2", "name" : "My Code 2", "ID" : "2222" } ]
そして、それは展開している必要があります私のラバ-config.xmlには、単にシェルファイルです。
完全なXMLを表示できますか?また、localhostの代わりに 'host =" 0.0.0.0 "'を確認してください –
私はお詫びします、私はXMLを置くことを忘れました。私はそれを示すために上で編集しました。私が探しているのは、データをペイロードに戻すことだけです。しかし、それはミュールランタイムから呼び出す。 –
まあ、確かに...あなたのRAMLファイルはどうなっていますか?私は生成されたフローと比較したいです –