- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想编写一个与 Web 服务器通信的 MFP 适配器 (v8)。服务器等待包含图像信息的参数图像。移动客户端实现是在 ionic cordova 中实现的。
首先,我检查了海报,这是要发送的正确请求,但我无法找到适配器的正确配置/实现/调用。
我做错了什么?
1) 这是海报调用的工作副本
POST /GetImageKeywords HTTP/1.1
Host: XXXXXXX.mybluemix.net:443
Cache-Control: no-cache
Postman-Token: a98cac04-fe12-3e0f-2884-250bb5ff39ae
Content-Type: application/x-www-form-urlencoded
image=data%3..................
2) 这是不工作的 MFP 适配器实现:
function getTagsForPicture(urlimage) {
var input = {
method : 'post',
returnedContentType : 'xml',
path : 'GetImageKeywords',
parameters: {'image': urlimage },
headers: {"Accept":"application\/x-www-form-urlencoded",
"Content-Type":"application\/x-www-form-urlencoded"}
};
return MPF.Server.invokeHttp(input);
}
3) 这是移动客户端适配器调用:
var getTagsRequest = new WLResourceRequest(
"/adapters/UploadPic/getTagsForPicture",
WLResourceRequest.POST);
getTagsRequest.setQueryParameter("params", "['image']" );
getTagsRequest.send().then(
getTagsSuccess,
getTagsFailure
);
function getTagsSuccess (result){
console.log('Success, getTags is : ', result);
q.resolve(result);
WL.SimpleDialog.show(
"Got Tags", "You can continue using the application",
[{text: "OK, thanks", handler: function() {WL.Logger.debug("Got Tags"); }
}]
);
};
function getTagsFailure (result){
console.log('Failure, getTags is : ', result);
q.reject(result);
WL.SimpleDialog.show(
"Got NO Tags", "Try it again later.",
[{text: "OK, thanks", handler: function() {WL.Logger.debug("Got NO Tags"); }
}]
);
}
console.log("Tags*** ", q);
return q.promise;
chrome 中的日志信息
{responseHeaders: Object, status: 500, responseText: "{"errors":["Unexpected error in server, see logs"],"isSuccessful":false,"warnings":[],"info":[]}", responseJSON: Object, invocationContext: null}
invocationContext:null
responseHeaders:Object
responseJSON:Object
responseText
:"{"errors":["Unexpected error in server, see logs"],"isSuccessful":false,"warnings":[],"info":[]}"
status:500
登录 MFP 开发服务器:
Error FWLST0904E: Exception was thrown while invoking procedure: getTagsForPicture in adapter: UploadPic
Date Wednesday, Jun 1, 2016, 9:27 PM
Server fe80:0:0:0:a65e:60ff:fedc:5a99%4
Security Level Error
Source Class com.ibm.mfp.server.js.adapter.internal.JavascriptManagerImpl
Source Method Name
Logger Name com.ibm.mfp.server.js.adapter.internal.JavascriptManagerImpl
Thread ID 1743
Message FWLST0904E: Exception was thrown while invoking procedure: getTagsForPicture in adapter: UploadPic
Config.xml信息:
<procedure name="getTagsForPicture" secured="false"/>
<procedure name="uploadVacationInformationComplete" secured="false"/>
<procedure name="unprotected" secured="false"/>
最佳答案
我有一个拼写错误MPF,我找到了配置的解决方案:
这是 javascript 适配器的工作实现:
function getTagsForPicture(urlimage) {
var value = "image=" + urlimage;
MFP.Logger.warn("Image input " + value.toString());
var requestStructure = {
method : 'post',
returnedContentType : 'xml',
path : 'GetImageKeywords',
parameters: {'image': urlimage },
headers: {"Accept":"application\/plain"}
};
MFP.Logger.warn("Preparing request structure " + JSON.stringify(requestStructure));
return MFP.Server.invokeHttp(requestStructure);
}
客户端内部出现与("params", "['image']")相关的错误,正确的是("params", [image])强>.
var getTagsRequest = new WLResourceRequest(
"/adapters/UploadPic/getTagsForPicture",
WLResourceRequest.POST);
getTagsRequest.setQueryParameter("params", [image] );
getTagsRequest.send().then(
getTagsSuccess,
getTagsFailure
);
function getTagsSuccess (result){
console.log('Success, getTags is : ', result);
q.resolve(result);
WL.SimpleDialog.show(
"Got Tags", "You can continue using the application",
[{text: "OK, thanks", handler: function() {WL.Logger.debug("Got Tags"); }
}]
);
};
function getTagsFailure (result){
console.log('Failure, getTags is : ', result);
q.reject(result);
WL.SimpleDialog.show(
"Got NO Tags", "Try it again later.",
[{text: "OK, thanks", handler: function() {WL.Logger.debug("Got NO Tags"); }
}]
);
}
关于javascript - 如何为工作海报 REST 调用定义 MFP javascript 适配器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37575118/
我目前提供 4 种分辨率的所有图像(@1x、@2x、@3x 和 @4x) 以便图像在任何显示器上都能清晰显示。但现在我遇到了问题,我在网站上也有一个视频,我想提供 4 种分辨率的视频及其预览图像(所谓
在我的 Ruby on Rails 应用程序中,我使用 imdb gem (https://rubygems.org/gems/imdb) 按标题搜索电影并获取海报 url 并将其添加到我的电影模型中
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,
过去我发现Visual Studio 2010 Keybinding Posters和 Visual C# 2005 Keyboard Shortcut Reference Poster非常有帮助。
我是一名优秀的程序员,十分优秀!