HashMap<String, String>
JS アプリケーションから Google アプリに送信したい。Cloud Endpoints Collection ParameterHashMapContainer
のようなクラスを作成しました。
Endpoint メソッドは次のように定義されます。
public Entity myMethod(
@Named('param1') String param1,
@Nullable @Named('param2') HashMapContainer param2) {
//...
}
API 生成を実行すると、次のエラーが発生します。
com.google.api.server.spi.config.validation.ApiConfigInvalidException:
Resource type 'class com.mason.server.entity.HashMapContainer'
in method 'endpoint.myMethod' should not be named.
したがって、@Named
注釈を削除します。API は生成されますが、明らかに、JS アプリケーションによって送信されたパラメーターを受け取りません。私のJavaScriptは次のようなものです:
function doTransaction() {
var req = gapi.client.myApi.endpoint.myMethod({
'param1': 'FOO',
'param2': {
'value1':'foofoo',
'value2':'barbar',
'value3':'foobar'
}
});
req.execute(function(data) {
console.log(data);
});
}
アノテーションparam2
の使用が許可されていない場合、どうすれば取得できますか?
私のJavaScriptが間違っているのでしょうか?@Named