首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用angular 4集成woocommerce获取TypeError: crypto.createHmac不是一个函数

使用angular 4集成woocommerce获取TypeError: crypto.createHmac不是一个函数
EN

Stack Overflow用户
提问于 2018-05-27 04:11:24
回答 1查看 173关注 0票数 1

我正在尝试做一个与woocommerce集成的angular 4应用程序来列出所有的产品。以下是我的代码

代码语言:javascript
运行
AI代码解释
复制
import { Component, OnInit } from '@angular/core';
import {Headers, Http, RequestOptions, URLSearchParams} from '@angular/http';
import 'rxjs/add/operator/toPromise';
import * as WC from 'woocommerce-api';
import { WooApiService } from 'ng2woo';
import * as CryptoJS from 'crypto-js';
@Component({
selector: 'app-pcat',
templateUrl: './pcat.component.html',
styleUrls: ['./pcat.component.scss']
})
export class PcatComponent implements OnInit {
WooCommerce: any;
products: any;
public crypto: any;
typesOfShoes = ['Boots', 'Clogs', 'Loafers', 'Moccasins', 'Sneakers'];
constructor(private woo: WooApiService) {}
ngOnInit(): void  {
this.woo.fetchItems('products')
.then(products => console.log(products));
}}

我在控制台中遇到错误

代码语言:javascript
运行
AI代码解释
复制
Error: Uncaught (in promise): TypeError: crypto.createHmac is not a function
TypeError: crypto.createHmac is not a function
hash_function@webpack-internal:///../../../../woocommerce-api/index.js:133:16
OAuth.prototype.getSignature@webpack-internal:///../../../../oauth-1.0a/oauth-1.0a.js:100:12
OAuth.prototype.authorize@webpack-internal:///../../../../oauth-1.0a/oauth-1.0a.js:87:34
WooCommerceAPI.prototype._request@webpack-internal:/woocommerce-api/index.js:186:17
WooCommerceAPI.prototype.get@webpack-internal:/woocommerce-api/index.js:213:10
fetchItems/<@webpack-internal:/ng2woo/dist/src/woocommerce.service.js:24:13
ZoneAwarePromise@webpack-internal:/zone.js/dist/zone.js:891:29
EN

回答 1

Stack Overflow用户

发布于 2019-03-13 17:34:09

是的,这个问题与最近在Angular6中的“升级”有关,在我的例子中是Ionic4。密码库被排除在外,因为它被认为太大了。对于如何解决这个问题,Angular似乎还没有明确的解决方案,所以到目前为止,人们不得不在外部包含这些库。

最有可能的是你添加了一些类似于我下面的"package.json“的东西,甚至到了这一步。

代码语言:javascript
运行
AI代码解释
复制
"browser": {
    "aws4": false,
    "aws-sign2": false,
    "crypto": false,
    "ecc-jsbn": false,
    "http": false,
    "http-signature": false,
    "https": false,
    "net": false,
    "oauth-sign": false,
    "path": false,
    "request": false,
    "sshpk": false,
    "stream": false,
    "tls": false
  },

我也尝试过,但没有成功。

1-安装@angular-builders/custom-webpack

2-在angular.json中添加自定义构建器:在angular.json >项目>架构师> build > builder将@angular-devkit/build-angular:browser替换为@angular-builders/ custom -browser

3-在项目的根目录创建一个文件webpack.config.js :这将由新的构建器加载(默认情况下,文件名是webpack.config.js,但如果需要,您可以有一个自定义的文件名,请参阅此处)。注意:这会将你的配置附加到默认的来自angular的webpack配置。

4-在webpack.config.js中添加节点支持:例如,web3需要以下内容。

代码语言:javascript
运行
AI代码解释
复制
module.exports = {
  node: {
    crypto: true,
    http: true,
    https: true,
    os: true,
    vm: true,
    stream: true
  }
}

我最终创建了woocommerceAPI,并且我有了一个可以工作的版本。我发现至少有40个fork做过类似的事情。在下面的代码和浏览器之间,它应该可以工作。风俗的webpack是没有必要的。

Modified WooCommerceAPI

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50548946

复制
相关文章
Kali Linux 无线渗透测试入门指南 第八章 攻击企业级 WPA 和 RADIUS
企业级 WPA 总是自带不可攻破的光环。多数网络管理员认为它对于无线安全问题是个银弹。在这一章中,我们会看到这个真理不再正确了。
ApacheCN_飞龙
2022/12/01
9910
没有身份凭证的情况下,攻击者就能登录FreeRADIUS
近期,来自卢森堡RESTENA的安全研究专家Stefan Winter在当前全球最流行的radius服务器中发现了一个TLS认证绕过漏洞。 FreeRADIUS<点击阅读原文查看链接>是目前世界上最受
FB客服
2018/02/26
1.3K0
没有身份凭证的情况下,攻击者就能登录FreeRADIUS
影响所有苹果设备的无线漏洞,可被强行接入恶意热点
CVE-2019-6203:苹果设备在PEAP认证上存在缺陷,攻击者可强迫苹果设备接入恶意热点。
FB客服
2019/05/21
1.1K0
无线网络 EAP 认证
平常我们见到最多的 wifi 安全模式都是 WAP2 PSK 由于 WEP 被发现了很多漏洞。WAP2 就出来了他的安全性比 WEP 是高很多的,但是 WAP2 也不是绝对安全的一种 wifi,他的安全性有点依赖密码,也就是说当你的 wifi 密码泄露了他就变的不太安全了。
信安之路
2018/08/08
4.1K0
无线网络 EAP 认证
无线802.1x认证简介及配置方法
XX大学无线网络ECUST.1x(以ECUST.1x为例,ECUST-dorm.1x相同)采用802.1x接入方式,这是一种安全且方便的接入方式。第一次配置好以后,只要在ECUST.1x的覆盖范围内,系统将会自动连接并进行身份认证,非常方便,只有当您更改统一身份认证(UIS)帐号密码后,才需要到Wi-Fi设置里更改登录密码。通过802.1x接入无线网络,所有数据都经过安全加密,保障了用户的隐私不被窃取
yaodo
2022/06/22
4.4K0
wpa_supplicant 的配置说明文件 wpa_supplicant.conf
通过从客户端认证中退出,windows下的认证储存可以被使用,并且私人密匙可以通过以下格式配置: cert://substring_to_match hash://certificate_thumbprint_in_hex
iOSDevLog
2020/06/11
9.8K0
wpa_supplicant.conf 配置文件解析(二)
上一篇链接:https://blog.csdn.net/qq_43804080/article/details/100739897
用户7557625
2020/07/15
4.7K0
最详细的802.1x认证原理及eap-md5的认证授权计费【建议收藏分享】
802.1x又叫Eapol协议,是基于二层做准入控制的,他是基于端口(接口)的网络接入控制协议,802.1x协议仅关注接入端口的状态(一般指client连接入交换机的接口),当合法(根据账号和密码)用户接入时,该端口打开,当非法用户接入或没有用户接入时,该端口状态关闭。
Ponnie
2022/01/13
8.5K0
最详细的802.1x认证原理及eap-md5的认证授权计费【建议收藏分享】
玩转「Wi-Fi」系列之wpa_supplicant 目录介绍(八)
之后的文章基本都是wpa_supplicant源码分析的介绍, wpa_supplicant 一个庞大的开源项目, 最新版本的为2016-10-V2.6。据目前来开,WiFi相关应用层的操作基本都是wpa_supplicant 的封装,包括Android 。初步统计一下,wpa_supplicant 源文件个数 552个, 20万行代码。 分析起来工作量巨大,这条路非常难走,请读者做好准备。
程序手艺人
2019/02/21
4.7K0
玩转「Wi-Fi」系列之wpa_supplicant 目录介绍(八)
无线渗透(下)—企业级WPA破解
0x00. 企业级WPA/WPA2简介 WPA/WPA2企业版:在大型企业网络中,通常采用802.1X的接入认证方式。802.1X认证是一种基于接口的网络接入控制,用户提供认证所需的凭证,如用户名和密码,通过特定的用户认证服务器(一般是RADIUS服务器)和可扩展认证协议EAP(Extensible Authentication Protocol)实现对用户的认证。WPA/WPA2支持基于EAP-TLS(Transport Layer Security)和EAP-PEAP(Protected EAP)的8
信安之路
2018/08/08
2.7K0
无线渗透(下)—企业级WPA破解
CentOS 7 部署OpenLDAP+FreeRadius
一、pre-installer ldap 1.1、实验环境 系统:CentOS 7 Openldap:2.4.44 Freeradius:3.0.13 Ldapadmin:1.8.3(win64) Phpldapadmin:1.2.3 1.2、系统优化 关闭防火墙:
小仙女闯运维
2020/09/23
2.5K0
SER+FreeRADIUS实现3A
部分内容转自VOIPFC,原文使用的SER版本不是最新的了,我在自己实践的基础上将对文档进行一下完善。
py3study
2020/01/06
9020
CISA命令美国联邦机构在7月22日前为CVE-2022-26925打补丁
近日,美国网络安全和基础设施安全局CISA再次将CVE-2022-26925漏洞添加到已知漏洞目录中,并命令联邦文职行政部门FCEB在7月22日前按规定执行修复。CVE-2022-26925漏洞允许未经身份验证的攻击者能够在匿名模式下通过NTLM的身份验证,这可能会导致攻击者夺取整个域的控制权。 据悉在今年5月,CISA曾将CVE-2022-26925 Windows LSA添加在“已知漏洞目录”中,并发布了强制修复的命令,但很快CISA就将这条公告删除。原因微软2022年5月的周二补丁虽然声称解决了CVE
FB客服
2023/03/30
3410
CISA命令美国联邦机构在7月22日前为CVE-2022-26925打补丁
初识PAM4
今天主要介绍下PAM4,笔者对此也是刚刚接触,如果有理解错误的地方,还请大家指出。
光学小豆芽
2020/08/14
2.2K0
Android的Wifi连接
最近在做Wifi连接的功能,在网上查找了很多资料,可用的也比较少,最后遇到很多了问题,一路走来也解决了很多问题,特此记录。
None_Ling
2019/10/29
2.6K0
IntelliJ IDEA 2021.1 EAP 发布
IntelliJ IDEA 2021.1 EAP 1 现已发布,官方表示,其主要是将 IntelliJ IDEA 2021.1 作为一个高质量的版本来对待,它将增强产品的可用性和用户界面。以及关注用户在问题跟踪器中发现的痛点,并计划提供一些新功能。
用户1516716
2021/03/04
6630
IntelliJ IDEA 2021.1 EAP 发布
JMS + jboss EAP 6.2 示例
.Net中如果需要消息队列功能,可以很方便的使用微软自带的MSMQ,对应到Java中,这个功能就是JMS(Java Message Service). 下面以Jboss EAP 6.2环境,介绍一下基本的用法: JMS有二种基本的使用模式, 一种是点对点模式(即“一条”消息只能从“一个”发送方传输到“一个”接收方) - 这种模式下,发送方、接收方不必同时在线,消息在未取回走,一直存放在队列中。 另一种是发布/订阅模式,即一条消息(该模式下,称为“主题”),被一个发送方发送后,如果有多个接收方订阅了,这些接收
菩提树下的杨过
2018/01/24
1.7K0
JMS + jboss EAP 6.2 示例
pyyaml使用_pam模块
假设我们有两个不同的工作环境,开发环境 dev 和生产环境 prod,在这两个不同的环境下有部分环境配置是有区别的,我们可以使用 pyyaml 将他们配置在一起,解析时再加以区分。
全栈程序员站长
2022/09/30
8670
Jboss EAP:native management API学习
上一节已经学习了CLI命令行来控制JBOSS,如果想在程序中以编码方式来控制JBOSS,可以参考下面的代码,实际上在前面的文章,用代码控制Jboss上的DataSource,已经有所接触了,API与CLI是完全等价的,一个是人工敲指令,一个是代码控制,二者最终的效果一致。 import com.sun.javafx.sg.PGShape; import org.jboss.as.controller.client.ModelControllerClient; import org.jboss.as.cont
菩提树下的杨过
2018/01/18
6410
【漫画科普】什么是PAM4
所以,他就和小白约定:考试的时候,自己会吹泡泡,吹大泡泡代表1(对),吹小泡泡代表0(错)。
鲜枣课堂
2020/09/24
1.3K0
【漫画科普】什么是PAM4

相似问题

叉子连接简单程序示例-需要错误指导

42

需要简单的css解析指导

11

我需要简单的Android动画示例

12

我需要简单的文件上传示例

14

需要指导一个简单的猪游戏,结束和结束。

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文