summaryrefslogtreecommitdiffstats
path: root/archives/extend/attachments/20140203/2982cff3/attachment.html
diff options
context:
space:
mode:
Diffstat (limited to 'archives/extend/attachments/20140203/2982cff3/attachment.html')
-rw-r--r--archives/extend/attachments/20140203/2982cff3/attachment.html82
1 files changed, 82 insertions, 0 deletions
diff --git a/archives/extend/attachments/20140203/2982cff3/attachment.html b/archives/extend/attachments/20140203/2982cff3/attachment.html
new file mode 100644
index 00000000..b011e41e
--- /dev/null
+++ b/archives/extend/attachments/20140203/2982cff3/attachment.html
@@ -0,0 +1,82 @@
+<tt>
+&lt;div&nbsp;dir=&quot;ltr&quot;&gt;My&nbsp;application&nbsp;sends&nbsp;both&nbsp;headers:&nbsp;“Content-type”&nbsp;and&nbsp;“Accept”&nbsp;header&nbsp;using&nbsp;POST&nbsp;method.&lt;div&gt;&lt;br&gt;&lt;div&gt;For&nbsp;POST&nbsp;rest&nbsp;handler&nbsp;do&nbsp;I&nbsp;have&nbsp;to&nbsp;specify&nbsp;both:&nbsp;content_types_accepted&nbsp;and&nbsp;content_types_provided&nbsp;to&nbsp;manage&nbsp;this&nbsp;kind&nbsp;of&nbsp;request?&lt;/div&gt;<br>
+<br>
+&lt;/div&gt;&lt;/div&gt;&lt;div&nbsp;class=&quot;gmail_extra&quot;&gt;&lt;br&gt;&lt;br&gt;&lt;div&nbsp;class=&quot;gmail_quote&quot;&gt;On&nbsp;Mon,&nbsp;Feb&nbsp;3,&nbsp;2014&nbsp;at&nbsp;7:23&nbsp;PM,&nbsp;Loïc&nbsp;Hoguin&nbsp;&lt;span&nbsp;dir=&quot;ltr&quot;&gt;&lt;&lt;a&nbsp;href=&quot;mailto:[email protected]&quot;&nbsp;target=&quot;_blank&quot;&gt;[email protected]&lt;/a&gt;&gt;&lt;/span&gt;&nbsp;wrote:&lt;br&gt;<br>
+<br>
+&lt;blockquote&nbsp;class=&quot;gmail_quote&quot;&nbsp;style=&quot;margin:0&nbsp;0&nbsp;0&nbsp;.8ex;border-left:1px&nbsp;#ccc&nbsp;solid;padding-left:1ex&quot;&gt;The&nbsp;content-type&nbsp;provided&nbsp;is&nbsp;relevant&nbsp;for&nbsp;any&nbsp;response,&nbsp;not&nbsp;just&nbsp;responses&nbsp;to&nbsp;GET&nbsp;requests.&nbsp;It&nbsp;defaults&nbsp;to&nbsp;text/html.&nbsp;If&nbsp;your&nbsp;client&nbsp;doesn&#39;t&nbsp;send&nbsp;that&nbsp;content-type,&nbsp;you&nbsp;have&nbsp;to&nbsp;define&nbsp;the&nbsp;callback.&lt;br&gt;<br>
+<br>
+<br>
+&lt;br&gt;<br>
+I&nbsp;notice&nbsp;that&nbsp;the&nbsp;documentation&nbsp;is&nbsp;incorrect&nbsp;about&nbsp;the&nbsp;relevant&nbsp;methods&nbsp;for&nbsp;this&nbsp;callback,&nbsp;I&nbsp;will&nbsp;open&nbsp;a&nbsp;ticket&nbsp;to&nbsp;fix&nbsp;it&nbsp;soon.&lt;div&nbsp;class=&quot;im&quot;&gt;&lt;br&gt;<br>
+&lt;br&gt;<br>
+On&nbsp;02/03/2014&nbsp;07:13&nbsp;PM,&nbsp;Łukasz&nbsp;Biedrycki&nbsp;wrote:&lt;br&gt;<br>
+&lt;/div&gt;&lt;blockquote&nbsp;class=&quot;gmail_quote&quot;&nbsp;style=&quot;margin:0&nbsp;0&nbsp;0&nbsp;.8ex;border-left:1px&nbsp;#ccc&nbsp;solid;padding-left:1ex&quot;&gt;&lt;div&nbsp;class=&quot;im&quot;&gt;<br>
+Hi,&lt;br&gt;<br>
+I&nbsp;have&nbsp;a&nbsp;rest&nbsp;handler&nbsp;that&nbsp;accepts&nbsp;POST&nbsp;and&nbsp;PUT&nbsp;requests&nbsp;with&lt;br&gt;<br>
+“application/json”&nbsp;content&nbsp;type.&lt;br&gt;<br>
+&lt;br&gt;<br>
+I&nbsp;have&nbsp;content_types_accepted&nbsp;function&nbsp;defined&nbsp;as&nbsp;follows:&lt;br&gt;<br>
+&lt;br&gt;<br>
+content_types_accepted(Req,&nbsp;State)&nbsp;-&gt;&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+{[{‘application/json&#39;,&nbsp;from_json}],&nbsp;Req,&nbsp;State}.&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+The&nbsp;problem&nbsp;I&nbsp;have&nbsp;is&nbsp;within&nbsp;a&nbsp;request&nbsp;that&nbsp;has&nbsp;two&nbsp;headers:&lt;br&gt;<br>
+&lt;br&gt;&lt;/div&gt;<br>
+*Content-type*:&nbsp;application/json&lt;br&gt;<br>
+*Accept*:&nbsp;application/json&lt;br&gt;<br>
+&lt;br&gt;<br>
+With&nbsp;this&nbsp;combination&nbsp;I&nbsp;receive&nbsp;*406*.&lt;div&nbsp;class=&quot;im&quot;&gt;&lt;br&gt;<br>
+&lt;br&gt;<br>
+You&nbsp;can&nbsp;repeat&nbsp;it&nbsp;with&nbsp;test:&lt;br&gt;<br>
+&lt;br&gt;<br>
+http_SUITE.erl:&lt;br&gt;<br>
+1072&nbsp;rest_postonly(Config)&nbsp;-&gt;&lt;br&gt;<br>
+1073&nbsp; &nbsp; &nbsp;Client&nbsp;=&nbsp;?config(client,&nbsp;Config),&lt;br&gt;<br>
+1074&nbsp; &nbsp; &nbsp;Headers&nbsp;=&nbsp;[&lt;br&gt;<br>
+1075&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{&lt;&lt;&quot;content-type&quot;&gt;&gt;,&nbsp;&lt;&lt;&quot;text/plain&quot;&gt;&gt;},&lt;br&gt;<br>
+1076&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;{&lt;&lt;&quot;accept&quot;&gt;&gt;,&nbsp;&lt;&lt;&quot;text/plain&quot;&gt;&gt;}&lt;br&gt;<br>
+1077&nbsp; &nbsp; &nbsp;],&lt;br&gt;<br>
+1078&nbsp; &nbsp; &nbsp;{ok,&nbsp;Client2}&nbsp;=&nbsp;cowboy_client:request(&lt;&lt;&quot;POST&quot;&lt;u&gt;&lt;/u&gt;&gt;&gt;,&lt;br&gt;<br>
+1079&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;build_url(&quot;/postonly&quot;,&nbsp;Config),&nbsp;Headers,&nbsp;&quot;12345&quot;,&nbsp;Client),&lt;br&gt;<br>
+1080&nbsp; &nbsp; &nbsp;{ok,&nbsp;204,&nbsp;_,&nbsp;_}&nbsp;=&nbsp;cowboy_client:response(&lt;u&gt;&lt;/u&gt;Client2).&lt;br&gt;<br>
+&lt;br&gt;<br>
+My&nbsp;solution&nbsp;to&nbsp;that&nbsp;was&nbsp;to&nbsp;add&nbsp;a&nbsp;content_types_provided&nbsp;function:&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+content_types_provided(Req,&nbsp;State)&nbsp;-&gt;&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+ContentTypes&nbsp;=&nbsp;[{{&lt;&lt;&quot;application&quot;&gt;&gt;,&nbsp;&lt;&lt;&quot;json&quot;&gt;&gt;,&nbsp;&#39;*&#39;},&nbsp;to_json}],&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+{ContentTypes,&nbsp;Req,&nbsp;State}.&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;&lt;/div&gt;<br>
+But&nbsp;it&nbsp;is&nbsp;useless&nbsp;as&nbsp;*to_json*&nbsp;callback&nbsp;registered&nbsp;is&nbsp;not&nbsp;called&nbsp;anyhow.&lt;br&gt;<br>
+&lt;br&gt;<br>
+Adding&nbsp;*content_types_provided*&nbsp;function&nbsp;is&nbsp;a&nbsp;correct&nbsp;solution&nbsp;in&nbsp;this&nbsp;case?&lt;div&nbsp;class=&quot;im&quot;&gt;&lt;br&gt;<br>
+Or&nbsp;I&nbsp;am&nbsp;missing&nbsp;something&nbsp;here?&lt;br&gt;<br>
+“Accept”&nbsp;header&nbsp;is&nbsp;not&nbsp;relevant&nbsp;only&nbsp;in&nbsp;case&nbsp;of&nbsp;GET&nbsp;requests?&lt;br&gt;<br>
+&lt;br&gt;<br>
+Thank&nbsp;for&nbsp;help,&lt;br&gt;<br>
+Łukasz&nbsp;Biedrycki&lt;br&gt;<br>
+&lt;br&gt;<br>
+&lt;br&gt;&lt;/div&gt;<br>
+______________________________&lt;u&gt;&lt;/u&gt;_________________&lt;br&gt;<br>
+Extend&nbsp;mailing&nbsp;list&lt;br&gt;<br>
+&lt;a&nbsp;href=&quot;mailto:[email protected]&quot;&nbsp;target=&quot;_blank&quot;&gt;[email protected]&lt;/a&gt;&lt;br&gt;<br>
+&lt;a&nbsp;href=&quot;https://lists.ninenines.eu/listinfo/extend&quot;&nbsp;target=&quot;_blank&quot;&gt;https://lists.ninenines.eu/&lt;u&gt;&lt;/u&gt;listinfo/extend&lt;/a&gt;&lt;br&gt;<br>
+&lt;br&gt;&lt;span&nbsp;class=&quot;HOEnZb&quot;&gt;&lt;font&nbsp;color=&quot;#888888&quot;&gt;<br>
+&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;span&nbsp;class=&quot;HOEnZb&quot;&gt;&lt;font&nbsp;color=&quot;#888888&quot;&gt;<br>
+&lt;br&gt;<br>
+--&nbsp;&lt;br&gt;<br>
+Loïc&nbsp;Hoguin&lt;br&gt;<br>
+&lt;a&nbsp;href=&quot;http://ninenines.eu&quot;&nbsp;target=&quot;_blank&quot;&gt;http://ninenines.eu&lt;/a&gt;&lt;br&gt;<br>
+&lt;/font&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br&gt;&lt;/div&gt;<br>
+
+</tt>