Ruby on rails 使用savon和Echosign API发布预填充PDF
我使用savonrb作为SOAP客户端向echosign发出api请求以生成小部件。 似乎savon只使用最后一个字段的值覆盖我的合并字段,而不是将它们作为数组传递 我用于进行api调用的参数:Ruby on rails 使用savon和Echosign API发布预填充PDF,ruby-on-rails,ruby,api,savon,echosign,Ruby On Rails,Ruby,Api,Savon,Echosign,我使用savonrb作为SOAP客户端向echosign发出api请求以生成小部件。 似乎savon只使用最后一个字段的值覆盖我的合并字段,而不是将它们作为数组传递 我用于进行api调用的参数: call_api(:create_personal_embedded_widget, senderInfo: {email: sender_email}, widgetInfo: { "callbackInfo" => { "signedDocumentUrl" => signed_
call_api(:create_personal_embedded_widget, senderInfo: {email: sender_email}, widgetInfo: {
"callbackInfo" => {
"signedDocumentUrl" => signed_document_url
},
"fileInfos" => {
"FileInfo" => {
"file" =>encoded_file,
"fileName" =>"simple_text.docx",
"mimeType "=>"application/msword"
}
},
"formFieldLayerTemplates" => "",
"locale" => "",
"mergeFieldInfo" => {
"mergeFields" => {
"MergeField" =>
{
"defaultValue" => "Foo Bar",
"fieldName" => "fullName"
},
"MergeField" =>
{
"defaultValue" => "01-01-1980",
"fieldName" => "dob"
}
}
},
"name" => document_name,
"securityOptions" => "",
"signatureFlow" =>"SENDER_SIGNS_LAST",
"widgetAuthFailureInfo" => {
"deframe" =>"true",
"delay" =>"10",
"url" => error_call_back_url
},
"widgetCompletionInfo" => {
"deframe" =>"true",
"delay" =>"10",
"url" => success_call_back_url
}
}, personalizationInfo: "")
实际传递给echosign的内容:
<ins2:mergeFieldInfo>
<ins3:mergeFields>
<ins3:MergeField>
<ins3:defaultValue>01-01-1980</ins3:defaultValue>
<ins3:fieldName>dob</ins3:fieldName>
</ins3:MergeField>
</ins3:mergeFields>
</ins2:mergeFieldInfo>
我一直在绞尽脑汁,但没有用,我知道它会覆盖这些值,但不明白为什么,也不知道如何对它们进行索引,以便字段是增量的
提前谢谢 似乎不是soap或savon的问题,是我没有正确创建数组
mergeFields = { 'MergeField' => [
{'defaultValue' => 'Foo Bar', 'fieldName' => 'fullName' },
{'defaultValue' => '212-555-1234', 'fieldName' => 'phoneNumber },
]
}
在hash-it-self中,我只输入了变量
"mergeFieldInfo" => {
"mergeFields" => mergeFields
},