Bläddra i källkod

[mod] replace references request.request_data (GET or POST parameters) by request.form (based on merge of POST and GET parameters)

Alexandre Flament 8 år sedan
förälder
incheckning
58a6c045c8
2 ändrade filer med 13 tillägg och 23 borttagningar
  1. 6
    6
      searx/search.py
  2. 7
    17
      searx/webapp.py

+ 6
- 6
searx/search.py Visa fil

@@ -128,7 +128,7 @@ def make_callback(engine_name, callback, params, result_container):
128 128
     return process_callback
129 129
 
130 130
 
131
-def get_search_query_from_webapp(preferences, request_data):
131
+def get_search_query_from_webapp(preferences, form):
132 132
     query = None
133 133
     query_engines = []
134 134
     query_categories = []
@@ -147,11 +147,11 @@ def get_search_query_from_webapp(preferences, request_data):
147 147
     query_safesearch = preferences.get_value('safesearch')
148 148
 
149 149
     # TODO better exceptions
150
-    if not request_data.get('q'):
150
+    if not form.get('q'):
151 151
         raise Exception('noquery')
152 152
 
153 153
     # set pagenumber
154
-    pageno_param = request_data.get('pageno', '1')
154
+    pageno_param = form.get('pageno', '1')
155 155
     if not pageno_param.isdigit() or int(pageno_param) < 1:
156 156
         pageno_param = 1
157 157
 
@@ -159,7 +159,7 @@ def get_search_query_from_webapp(preferences, request_data):
159 159
 
160 160
     # parse query, if tags are set, which change
161 161
     # the serch engine or search-language
162
-    raw_text_query = RawTextQuery(request_data['q'], disabled_engines)
162
+    raw_text_query = RawTextQuery(form['q'], disabled_engines)
163 163
     raw_text_query.parse_query()
164 164
 
165 165
     # set query
@@ -170,7 +170,7 @@ def get_search_query_from_webapp(preferences, request_data):
170 170
     if len(raw_text_query.languages):
171 171
         query_lang = raw_text_query.languages[-1]
172 172
 
173
-    query_time_range = request_data.get('time_range')
173
+    query_time_range = form.get('time_range')
174 174
 
175 175
     query_engines = raw_text_query.engines
176 176
 
@@ -185,7 +185,7 @@ def get_search_query_from_webapp(preferences, request_data):
185 185
     else:
186 186
         # set categories/engines
187 187
         load_default_categories = True
188
-        for pd_name, pd in request_data.items():
188
+        for pd_name, pd in form.items():
189 189
             if pd_name == 'categories':
190 190
                 query_categories.extend(categ for categ in map(unicode.strip, pd.split(',')) if categ in categories)
191 191
             elif pd_name == 'engines':

+ 7
- 17
searx/webapp.py Visa fil

@@ -364,16 +364,6 @@ def render(template_name, override_theme=None, **kwargs):
364 364
 
365 365
 @app.before_request
366 366
 def pre_request():
367
-    # request.request_data
368
-    if request.method == 'POST':
369
-        request_data = request.form
370
-    elif request.method == 'GET':
371
-        request_data = request.args
372
-    else:
373
-        request_data = {}
374
-
375
-    request.request_data = request_data
376
-
377 367
     # merge GET, POST vars
378 368
     preferences = Preferences(themes, categories.keys(), engines, plugins)
379 369
     try:
@@ -416,7 +406,7 @@ def index():
416 406
     search_query = None
417 407
     result_container = None
418 408
     try:
419
-        search_query = get_search_query_from_webapp(request.preferences, request.request_data)
409
+        search_query = get_search_query_from_webapp(request.preferences, request.form)
420 410
         # search = Search(search_query) #  without plugins
421 411
         search = SearchWithPlugins(search_query, request)
422 412
         result_container = search.search()
@@ -428,8 +418,8 @@ def index():
428 418
     results = result_container.get_ordered_results()
429 419
 
430 420
     # UI
431
-    advanced_search = request.request_data.get('advanced_search', None)
432
-    output_format = request.request_data.get('format', 'html')
421
+    advanced_search = request.form.get('advanced_search', None)
422
+    output_format = request.form.get('format', 'html')
433 423
     if output_format not in ['html', 'csv', 'json', 'rss']:
434 424
         output_format = 'html'
435 425
 
@@ -490,7 +480,7 @@ def index():
490 480
         response_rss = render(
491 481
             'opensearch_response_rss.xml',
492 482
             results=results,
493
-            q=request.request_data['q'],
483
+            q=request.form['q'],
494 484
             number_of_results=number_of_results,
495 485
             base_url=get_base_url()
496 486
         )
@@ -499,7 +489,7 @@ def index():
499 489
     return render(
500 490
         'results.html',
501 491
         results=results,
502
-        q=request.request_data['q'],
492
+        q=request.form['q'],
503 493
         selected_categories=search_query.categories,
504 494
         pageno=search_query.pageno,
505 495
         time_range=search_query.time_range,
@@ -531,7 +521,7 @@ def autocompleter():
531 521
     disabled_engines = request.preferences.engines.get_disabled()
532 522
 
533 523
     # parse query
534
-    raw_text_query = RawTextQuery(request.request_data.get('q', '').encode('utf-8'), disabled_engines)
524
+    raw_text_query = RawTextQuery(request.form.get('q', '').encode('utf-8'), disabled_engines)
535 525
     raw_text_query.parse_query()
536 526
 
537 527
     # check if search query is set
@@ -564,7 +554,7 @@ def autocompleter():
564 554
         results.append(raw_text_query.getFullQuery())
565 555
 
566 556
     # return autocompleter results
567
-    if request.request_data.get('format') == 'x-suggestions':
557
+    if request.form.get('format') == 'x-suggestions':
568 558
         return Response(json.dumps([raw_text_query.query, results]),
569 559
                         mimetype='application/json')
570 560