我正在使用node OPC-UA客户端,并收到以下错误
Error: cannot coerce value=4 to Enum
at _decode_enumeration (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-factory/src/factories_enumerations.js:52:23)
at UserTokenPolicy.decode (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-service-endpoints/_generated_/_auto_generated_UserTokenPolicy.js:139:22)
at /Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-service-endpoints/_generated_/_auto_generated_EndpointDescription.js:181:12
at exports.decodeArray (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-basic-types/src/array.js:40:18)
at EndpointDescription.decode (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-service-endpoints/_generated_/_auto_generated_EndpointDescription.js:179:31)
at /Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-service-endpoints/_generated_/_auto_generated_GetEndpointsResponse.js:105:12
at exports.decodeArray (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-basic-types/src/array.js:40:18)
at GetEndpointsResponse.decode (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-service-endpoints/_generated_/_auto_generated_GetEndpointsResponse.js:103:22)
at MessageBuilder._safe_decode_message_body (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-secure-channel/src/message_builder.js:403:20)
at MessageBuilder._decode_message_body (/Users/xxx/apps/node-opcua-sample/node_modules/node-opcua-secure-channel/src/message_builder.js:450:18)我一直在其他ocpUA服务器上使用这个ocpUA (https://github.com/node-opcua/node-opcua),它们工作得很好。
这似乎是UserTokenPolicy令牌的一个问题,但它不应该在默认情况下匿名登录吗?还有什么其他问题呢?
请注意,它适用于prosys opcua客户端。
发布于 2018-10-31 20:46:24
看起来UserIdentityTokenType =4是not supported by node-opcua yet ...
const EnumUserIdentityTokenType_Schema = {
name: "EnumUserIdentityTokenType",
enumValues: {
ANONYMOUS: 0,
USERNAME: 1,
CERTIFICATE: 2,
ISSUEDTOKEN: 3
}
};OPC规范1.04也只指定了4 possible values from 0 to 3
<opc:EnumeratedType Name="UserTokenType" LengthInBits="32">
<opc:Documentation>The possible user token types.
</opc:Documentation>
<opc:EnumeratedValue Name="Anonymous" Value="0" />
<opc:EnumeratedValue Name="UserName" Value="1" />
<opc:EnumeratedValue Name="Certificate" Value="2" />
<opc:EnumeratedValue Name="IssuedToken" Value="3" />
</opc:EnumeratedType>请在https://github.com/node-opcua/node-opcua中提出问题并提供详细说明以重现该行为
https://stackoverflow.com/questions/53079291
复制相似问题