使用Phoenix Elixir框架模拟XML响应

时间:2017-07-08 18:05:18

标签: elixir

我的HTTP请求的响应主体是XML。 XML非常复杂,可能包含双引号。 我想通过在我的代码中提供典型XML响应的示例来模拟响应。我似乎找不到将XML作为简单字符串提供的方法。 这是一个从XML开始导致Elixir痛苦的例子:

<Title xmlns="http://website/namespaces/thing" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" .... >

HTTPoison的身体反应是身体:{...}。所以我需要在元组内部提供XML字符串,而Elixir不会爆炸。我已经尝试过没有成功的印记。

谢谢!

2 个答案:

答案 0 :(得分:0)

另一种解决方案是使用模块属性:

  @xml """
  my xml in here
  """

使用sweet_xml我能够

  myparse = parse(@xml)

工作了一个魅力。

我还想调查sweet_xml的stream_tags函数,并在lib文件夹中保存为单独的.xml文件很有用。

答案 1 :(得分:-1)

如果您想模拟XML响应,可以使用库:https://github.com/parroty/exvcr

当您第一次进行测试时,它会记录请求。之后,您将在json文件中使用已保存的响应。