Skip to content

"value" cannot be passed as a hex string on a SendTransaction request #223

Description

@nguyer

If I have a smart contract function that is payable I need to set a value field in the JSON object of the request body for a SendTransaction request.

Today if I set this to a string like this:

{
  "value": "0x01"
}

I get the following result in the FireFly explorer:

{
	"id": "default:25a46a6d-961a-47e2-a7e0-5e3aaeb431f3",
	"message": "json: invalid number literal, trying to unmarshal \"\\\"0x01\\\"\" into Number",
	"success": false
}

I think some of the backslash escaping craziness there is actually just added by the UI.

Ethconnect logs the following:

[2022-06-15T12:57:33.507Z]  WARN Failed to process message MsgContext[SendTransaction/default:25a46a6d-961a-47e2-a7e0-5e3aaeb431f3]: json: invalid number literal, trying to unmarshal "\"0x01\"" into Number

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions