From 8de67570f01e41574520145514eb4f6d69b0a50e Mon Sep 17 00:00:00 2001 From: Jacob Vorreuter Date: Mon, 17 Aug 2009 15:54:31 -0700 Subject: [PATCH] updating handling of http responses --- Makefile | 6 +++-- dependencies/dynamic_compile-0.1.tgz | Bin 5058 -> 0 bytes dependencies/mochiweb-0.2.tgz | Bin 41820 -> 0 bytes dependencies/mochixpath-0.1.tgz | Bin 40020 -> 0 bytes src/ex_consumer.erl | 7 +++++- src/ex_eval.erl | 35 ++++++++++++++++++++++++++- src/ex_pp.erl | 2 +- src/ex_web.erl | 19 +++++++-------- 8 files changed, 54 insertions(+), 15 deletions(-) delete mode 100644 dependencies/dynamic_compile-0.1.tgz delete mode 100644 dependencies/mochiweb-0.2.tgz delete mode 100644 dependencies/mochixpath-0.1.tgz diff --git a/Makefile b/Makefile index e734b18..6a5a166 100644 --- a/Makefile +++ b/Makefile @@ -24,7 +24,7 @@ rel: compile erl -pa ebin -noshell -run excavator build_rel -s init stop package: clean - @mkdir $(PKGNAME)-$(VERSION)/ && cp -rf ebin include Makefile public README.markdown src support t $(PKGNAME)-$(VERSION) + @mkdir $(PKGNAME)-$(VERSION)/ && cp -rf ebin excavator include Makefile public README.markdown src support t $(PKGNAME)-$(VERSION) @COPYFILE_DISABLE=true tar zcf $(PKGNAME)-$(VERSION).tgz $(PKGNAME)-$(VERSION) @rm -rf $(PKGNAME)-$(VERSION)/ @@ -32,4 +32,6 @@ install: @mkdir -p $(prefix)/$(LIBDIR)/$(PKGNAME)-$(VERSION)/{ebin,include} @mkdir -p $(prefix)/$(ROOTDIR)/bin for i in ebin/*.beam include/*.hrl ebin/*.app; do install $$i $(prefix)/$(LIBDIR)/$(PKGNAME)-$(VERSION)/$$i ; done - cp *.boot $(prefix)/$(ROOTDIR)/bin/ \ No newline at end of file + cp *.boot $(prefix)/$(ROOTDIR)/bin/ + @mkdir -p $(prefix)/etc/init.d + cp excavator $(prefix)/etc/init.d/ \ No newline at end of file diff --git a/dependencies/dynamic_compile-0.1.tgz b/dependencies/dynamic_compile-0.1.tgz deleted file mode 100644 index cfd836771f1ed78df991db2837b06a95c3cd381e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5058 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 Y^YlDDPtViy^gQPC9~=BALjX_!09}o)ivR!s diff --git a/dependencies/mochiweb-0.2.tgz b/dependencies/mochiweb-0.2.tgz deleted file mode 100644 index 4f92dc5be0f34e3a5384646d169e40bc8dd3f59b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 41820 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

(c3DGlV*c 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 Ah5!Hn diff --git a/src/ex_consumer.erl b/src/ex_consumer.erl index b55bcc3..908b229 100644 --- a/src/ex_consumer.erl +++ b/src/ex_consumer.erl @@ -317,10 +317,15 @@ assert_true(_K, [], list_of_strings) -> true; assert_true(_K, V, list_of_strings) when is_list(V) -> case lists:usort([ex_util:typeof(I) || I <- V]) of [string] -> true; - _ -> false + _ -> + case ex_util:typeof(V) of + string -> true; + _ -> false + end end; assert_true(_K, [], list_of_nodes) -> true; +assert_true(_K, {A,B,C}, list_of_nodes) when is_binary(A), is_list(B), is_list(C) -> true; assert_true(_K, V, list_of_nodes) when is_list(V) -> case lists:usort([ex_util:typeof(I) || I <- V]) of [node] -> true; diff --git a/src/ex_eval.erl b/src/ex_eval.erl index 34d7541..1ee690b 100644 --- a/src/ex_eval.erl +++ b/src/ex_eval.erl @@ -43,8 +43,18 @@ expand(State, {http, Method, Url, Headers}) when Method==options;Method==get;Met expand(State, {http, Method, Url, Headers, []}); expand(State, {http, Method, Url, Headers, Body}) -> Url1 = flatten_url(State, Url), - ex_web:request(Method, Url1, Headers, Body); + ex_web:request(Method, Url1, expand(State, Headers), expand(State, Body)); +%% HTTP Cookie Value +expand(State, {cookie, Key, HttpRespKey}) -> + Cookies = get_cookies(expand(State, HttpRespKey)), + case proplists:get_value(Key, Cookies) of + {cookie, _, Fields} -> + proplists:get_value(Key, Fields); + _ -> + undefined + end; + %% XPath expand(State, {xpath, Source, XPath}) -> ex_xpath:run(expand(State, XPath), expand(State, Source)); @@ -106,4 +116,27 @@ flatten_url(State, Url) -> case ex_util:typeof(Url) of string -> Url; list -> lists:concat([expand(State, I) || I <- Url]) + end. + +get_cookies({http_response, _, Headers, _}) -> + case proplists:get_all_values("set-cookie", Headers) of + [] -> + []; + Values -> + dict:to_list(lists:foldl( + fun(CookieString, Dict) -> + Fields = + [begin + case string:tokens(Field, "=") of + [Key] -> + {string:strip(Key), ""}; + [Key, Val] -> + {string:strip(Key), string:strip(Val)}; + [Key | Vals] -> + {string:strip(Key), string:strip(string:join(Vals, "="))} + end + end || Field <- string:tokens(CookieString, ";")], + [{Name,_}|_] = Fields, + dict:store(Name, {cookie, CookieString, Fields}, Dict) + end, dict:new(), Values)) end. \ No newline at end of file diff --git a/src/ex_pp.erl b/src/ex_pp.erl index f51a6d4..214b693 100644 --- a/src/ex_pp.erl +++ b/src/ex_pp.erl @@ -121,7 +121,7 @@ build_instr({call, _, {atom, _, Instr}, Args}) Instr==onfail; Instr==commit; Instr==add; Instr==gassign; Instr==gadd -> {tuple, ?L, [{atom,?L,instr}, {atom,?L,Instr}, to_cons(Args)]}; - + build_instr(Term) -> {tuple, ?L, [{atom,?L,instr}, {atom,?L,term}, to_cons([Term])]}. diff --git a/src/ex_web.erl b/src/ex_web.erl index 6ad11ae..0da017c 100644 --- a/src/ex_web.erl +++ b/src/ex_web.erl @@ -21,17 +21,14 @@ %% FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR %% OTHER DEALINGS IN THE SOFTWARE. -module(ex_web). --export([ - request/4 -]). +-export([request/4]). -define(HEADERS, [ - {"Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, - {"Accept-Language","en-us,en;q=0.5"}, - %{"Accept-Encoding","gzip,deflate"}, - {"Accept-Charset","ISO-8859-1,utf-8;q=0.7,*;q=0.7"}, - {"Connection","keep-alive"}, - {"User-Agent","Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.5) Gecko/2008120121 Firefox/3.0.5"} + {"Accept","text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"}, + {"Accept-Language","en-us,en;q=0.5"}, + {"Accept-Charset","ISO-8859-1,utf-8;q=0.7,*;q=0.7"}, + {"Connection","keep-alive"}, + {"User-Agent","Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.5) Gecko/2008120121 Firefox/3.0.5"} ]). request(Method, Url, [], Body) -> request(Method, Url, ?HEADERS, Body); @@ -45,7 +42,9 @@ request(Method, Url, Headers, []) request(Method, Url, Headers, Body) when Method == post; Method == put -> - case http:request(Method, {Url, Headers, "text/html", Body}, [], []) of + ContentType = proplists:get_value("Content-Type", Headers, "text/html"), + io:format("http:request(~p, ~p, ~p, ~p)~n", [Method, {Url, Headers, ContentType, Body}, [], []]), + case http:request(Method, {Url, Headers, ContentType, Body}, [], []) of {ok, {{_,RspStatus,_}, RspHeaders, RspBody}} -> {http_response, RspStatus, RspHeaders, RspBody}; {error, Reason} -> exit({?MODULE, ?LINE, Reason}) end. \ No newline at end of file