找回密码
 立即注册

QQ登录

只需一步,快速开始

yuanjian

初级会员

36

主题

70

帖子

392

积分

初级会员

积分
392
yuanjian
初级会员   /  发表于:2019-7-25 11:22  /   查看:12016  /  回复:27
1金币
活字格插件里如何访问活字格的API,或者怎样调用里面的方法

最佳答案

查看完整内容

报错 显示的请求地址是"customapi/wxpayapi/nativepay" 上传的api的请求地址是"customapi/nativepay/getpayurl"

27 个回复

倒序浏览
最佳答案
最佳答案
谢厅讲师达人认证 悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2019-7-25 11:22:29
来自 23#
yuanjian 发表于 2019-7-25 14:37
这是显示问题,鼠标放上去的url是有http在前面的

报错  显示的请求地址是"customapi/wxpayapi/nativepay"
上传的api的请求地址是"customapi/nativepay/getpayurl"

评分

参与人数 1金币 +200 收起 理由
Simon.hu + 200 赞一个!

查看全部评分

回复 使用道具 举报
谢厅讲师达人认证 悬赏达人认证 活字格认证
金牌服务用户   /  发表于:2019-7-25 11:24:36
2#
内置的方法一般是不让调用的。
你可以自己用活字格的服务端API写方法
前端用JavaScript调用
插件本质上也是对JavaScript的封装。
回复 使用道具 举报
yuanjian
初级会员   /  发表于:2019-7-25 11:42:13
3#
我已经写好了一个服务器api,测试没问题。然后我无论是吧插件上传到活字格还是把api的代码一起写到插件的项目里使用项目本身的js调用都会报500错误。
调用是Forguncy.Helper.post("customapi/nativepay/getpayurl",data,functon(d){alert(d);})
回复 使用道具 举报
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-7-25 11:46:36
5#
yuanjian 发表于 2019-7-25 11:42
我已经写好了一个服务器api,测试没问题。然后我无论是吧插件上传到活字格还是把api的代码一起写到插件的项 ...

你的问题是插件问题还是前后端交互的问题呢?如果是JS调用C#API,你的dll是否有正常上传,在活字格设计器的自定义Web API处是否正常显示。500错误是前端报错的还是服务器报错了。可不可以打个断点看下报错报到了哪里。
回复 使用道具 举报
yuanjian
初级会员   /  发表于:2019-7-25 11:49:23
6#
Eric.Liang 发表于 2019-7-25 11:46
你的问题是插件问题还是前后端交互的问题呢?如果是JS调用C#API,你的dll是否有正常上传,在活字格设计器 ...

前后端交互问题。dll正常上传,api显示正常。500是服务器错误,无法处理请求。打断点没用,他请求没到后台api那里去

回复 使用道具 举报
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2019-7-25 11:55:49
8#
yuanjian 发表于 2019-7-25 11:49
前后端交互问题。dll正常上传,api显示正常。500是服务器错误,无法处理请求。打断点没用,他请求没到后 ...

你用这种方式来做
  1. $.post(Forguncy.ForguncyData.ForguncyRoot + 'customapi/comConnect/getPortValue', null, function(res){
  2.    alert(res)
  3. })
复制代码
回复 使用道具 举报
yuanjian
初级会员   /  发表于:2019-7-25 12:47:25
9#
Eric.Liang 发表于 2019-7-25 11:55
你用这种方式来做

用这个也没用....这是插件里面的js
回复 使用道具 举报
yuanjian
初级会员   /  发表于:2019-7-25 12:48:01
10#
本帖最后由 yuanjian 于 2019-7-25 12:59 编辑

回复 使用道具 举报
yuanjian
初级会员   /  发表于:2019-7-25 12:55:06
11#
用这个也没用....这是插件里面的js
var WxPay = (function (_super) {
    __extends(WxPay, _super);
    function WxPay() {
        return _super !== null && _super.apply(this, arguments) || this;
    }

    WxPay.prototype.execute = function () {
        // Get setings

        var commandSettings = this.CommandParam;
        var APPID = commandSettings.APPID;
        var MCHID = commandSettings.MCHID;
        var KEY = commandSettings.KEY;
        var APPSECRET = commandSettings.APPSECRET;
        var NotifyUrl = commandSettings.NotifyUrl;
        var productId = commandSettings.productId;
        var productIdtext = this.evaluateFormula(productId);
        var totalF = commandSettings.totalF;
        var totalFtext = this.evaluateFormula(totalF);
        var title = commandSettings.title;
        var titletext = this.evaluateFormula(title);
        var data = {
            APPID: APPID,
            MCHID: MCHID,
            KEY: KEY,
            APPSECRET: APPSECRET,
            NotifyUrl: NotifyUrl,
            productId: productIdtext,
            totalF: totalFtext,
            title: titletext
        };
      
        //发送请求到服务器
       // Forguncy.Helper.post("customapi/wxpayapi/nativepay", data, function (d) { alert(d);});
        $.post(Forguncy.ForguncyData.ForguncyRoot + 'customapi/wxpayapi/nativepay', data, function (res) {
            alert(res);
        })
    };


    return WxPay;
}(Forguncy.CommandBase));

// Key format is "Namespace.ClassName, AssemblyName"
Forguncy.CommandFactory.registerCommand("WxPay.WxPay, WxPay", WxPay);
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部