顶 Opencart &Bootstrap&Android&IOS&JsonRPC&微信公众平台

2019-03-02 00:08|来源: 网路

OPENCART

OpenCart是开源、简洁、易用、功能丰富、SEO最佳优化的B2B, B2C解决方案。尝试着使用了Magento ,ecshop ....很多,opencart 比较出众。

BOOTSTRAP

BootStrap已经成为解决移动互联网网站的前段利器,让opencart穿上bootstrap的外衣,让你的电商平台自适应移动终端的访问。

解决方案:http://www.opencart.com/index.php?route=extension/extension/info&extension_id=10498

OPENCART JSONRPC

为ANDROID 和 IOS 提供JSONRPC 服务,下列是一个简单的PHP实现。

在OPENCART的路径   opencart\catalog\controller 路径下创建目录service,并创建jsonRPC.php

<?php 
class ControllerServiceJsonRPC extends Controller {

	public function index() {
		//获取客户端 JSON 请求
		$request_json_str = $GLOBALS['HTTP_RAW_POST_DATA'];
		//得到JSONRPC 请求对象
		$jsondecode = json_decode($request_json_str);
		//验证请求的method是否合法
		if ($jsondecode->method  && $this->validation($jsondecode->method)) {
			eval('$this->'.$jsondecode->method.'($jsondecode);');
		}
	}
	
	/**
	 * 公共方法 创建JSON RPC 响应对象
	 */
	private function createJSONObject($error_code, $error_msg, $obj) {
		$jsonResponseArray = array();
		$jsonResponseArray['id'] = "1";
		$jsonResponseArray['result'] = array(
			"errorMessage"=>$error_msg,
			"errorCode"=>$error_code,
			"response"=>$obj);
		return json_encode($jsonResponseArray);
	}
	
	/**
	 * 获得商品分类
	 * $reqParams[0] = 父分类ID
	 * 请求JSON样例 {"id":"4","jsonrpc":"2.0","method":"getCategory","params":["18"]}
	 */
	private function getCategory($jsondecode) {
		$this->load->model('catalog/category');	
		$reqParams = $jsondecode->params;
		$category_info = $this->model_catalog_category->getCategory($reqParams[0]);
		echo $this->createJSONObject("0000", "ok", $category_info);
	}
	
	private function validation($methodName) {
		$methodArray = array();
		$methodArray[] = "getCategory";
		$methodArray[] = "getProduct";
		if (in_array($methodName, $methodArray)) {
			return true;
		} else {
			return false;
		}
	}
}
?>

支持opencart JSONRPC的方法


获取分类

方法名称:getCategory

方法参数:分类ID

返回值:分类列表JSON

获取单个商品明细

方法名称:getProduct

方法参数:商品ID

返回值:商品明细:{options[], recomment[] .....}

商品检索

用户注册

用户登录

找回密码

订单历史

订单查询

商品收藏

购物车


ANDROID

IOS

微信公众平台


转自:http://my.oschina.net/u/1186469/blog/212298

相关问答

更多
  • 能使用的!微信 在安卓手机里可以使用,安装是用java 开发的,所以 可以用java开发
  • 微信公众平台开发注意事项: 一、微信公众平台开发是指为微信公众号进行业务开发,为移动应用、PC端网站、公众号第三方平台(为各行各业公众号运营者提供服务)的开发,请前往微信开放平台接入。 二、在申请到认证公众号之前,你可以先通过测试号申请系统,快速申请一个接口测试号,立即开始接口测试开发。 三、在开发过程中,可以使用接口调试工具来在线调试某些接口。 四、每个接口都有每日接口调用频次限制,可以在公众平台官网-开发者中心处查看具体频次。 五、在开发出现问题时,可以通过接口调用的返回码,以及报警排查指引(在公众平台 ...
  • 微网站开发模式教程:   第一步:申请消息接口   在公众平台网站的高级功能 – 开发模式页,点击“成为开发者”按钮,填写URL和Token,其中URL是开发者用来接收微信服务器数据的接口URL。Token可由开发者可以任意填写,用作生成签名。   第二步:验证URL有效性   开发者提交信息后,微信服务器将发送GET请求到填写的URL上,GET请求携带四个参数:   开发者通过检验signature对请求进行校验。若确认此次GET请求来自微信服务器,请原样返回 echostr参数内容,则接入生效,成为开发 ...
  • 这三个东西,我都有接触。我不是程序员,我只是后台的操作者。说实话,magento比较高级,如果你理解能力还可以,我觉得你可以使用这个系统,但是我看到太多的人连简单的后台设置都弄不清楚,半年网站都做不好。跟脑子有关吧。magento现在已经升级到2的版本,后台使用更美观大方。opencart的话,后台操作比较简单,适合新手。prestashop比较老旧,没考虑。 如果是新手,可以首选opencart,买个好点的模板安装,网站看起来也比较大气了。 如果对网站有更高的要求,可以选择magento,日后升级都是很方 ...
  • 我选择了CloudCache CDN扩展程序,它的工作方式就像一个魅力, http://www.opencart.com/index.php ? route = expand / extend / info&expand_id = 6351 I went with the CloudCache CDN extension and it works like a charm, http://www.opencart.com/index.php?route=extension/extension/info&ex ...
  • 你使用的路径是错误的。 将您的文件放在admin/controller/extension/module/custom_importer.php 。 请注意,类名以相应的方式更改。
  • 将col-sm-3 (以四个为一组)包装在单独的行中(带有类row div) 标记应该看起来像
    ...
    ...
    ...
    ...
    ...
  • 您面临的问题不是内联样式覆盖css规则,因为默认情况下,OpenCart css文件不会为类别页面中图像的宽度和高度设置css属性。 OpenCart会根据您在管理员中设置的内容(在您的情况下为400x400)自动调整图像大小。 由于没有css规则,因此显示的尺寸将是图像尺寸。 要解决此问题,您可以尝试以下任一方法: 在主css文件中,查找.product-list .image img并使用百分比值添加width和height标记。 由于您提到您正在尝试获取响应式网站,因此您可能需要为不同的屏幕大小设置单 ...
  • 谢谢汤姆。 我将在这里讨论一些关于你的例子的事情,然后我会试着回答你的问题。 (1)如果图像与请求的图像完全相同,则永远不会对图像进行转码。 请参见目录/ model / tool / image.php的第28行,其中块读取: if ($width_orig != $width || $height_orig != $height) { $image = new Image(DIR_IMAGE . $old_image); $image->resize($width, $height); ...
  • 你只需要一点编辑 - 而不是$str = $platform_info['name']; 做这个: // ... $prodplatforms = $query->rows; $platforms = array(); foreach($prodplatforms as $prodplatform){ $platform_id = $prodplatform['platform_id']; $platform_info = $this->model_catalog_platform->g ...