كيف يمكنني إرسال بيانات JSON التعسفي، مع رأس مخصص، إلى خادم الراحة؟

StackOverflow https://stackoverflow.com//questions/21057354

سؤال

tl؛ DR - كيف يمكنني إرسال سلسلة JSON إلى مضيف بقية مع رأس مصادقة؟ لقد جربت 3 طرق مختلفة وجدت واحدة تعمل مع أنواع مجهولة. لماذا لا يمكنني استخدام أنواع مجهولة؟ أحتاج إلى تعيين متغير يسمى "اسم المجموعة"، وينتوء عدم وجود معرف صالح C #.

الخلفية

أحتاج إلى نشر JSON ولكن لا أستطيع الحصول على الجسم ونوع المحتوى الصحيح

وظيفة # 1 - يعمل مع أنواع مجهولة

نوع المحتوى والبيانات صحيحة، لكنني لا أريد استخدام أنواع مجهولة الهوية. أريد استخدام سلسلة

giveacodicetagpre.

الإخراج # 1

نوع المحتوى والبيانات صحيحة عند استخدام Anonymoustypes + postasjsonasync، لكنني لا أريد استخدام أنواع مجهولة.

giveacodicetagpre.

وظيفة # 2 - لا يعمل كما هو متوقع

تأخذ سلسلة ووضعها في كائن stringcontent. هذا له تأثير جانبي لتغيير نوع المحتوى.

giveacodicetagpre.

الإخراج # 2

نوع المحتوى هو الخطأ عند استخدام StringContent + postasync

giveacodicetagpre.

وظيفة # 3 - لا يعمل كما هو متوقع

منذ أن أعرف PostAsJsonAsync يضبط contenttype بشكل صحيح، يتيح استخدام هذه الطريقة. (لا يعمل)

giveacodicetagpre.

الإخراج # 3

نوع المحتوى صحيح، جسم البريد هو الخطأ عند استخدام StringContent + postasjsonasync

giveacodicetagpre.

السؤال

كل ما أريد القيام به هو إرسال JSON كسلسلة أو كائن ديناميكي محدد في وقت التشغيل، إلى خادم، مع خادم محتوى HTTP صحيح، ومع رأس "Auth-Token" خاص.

أي مثال، إن لم يكن استخدام WebAPI، مثل ServiceStack، أو أي شيء آخر رائع.

هل كانت مفيدة؟

المحلول

giveacodicetagpre.

هو منشئ stringcontent.يبدو أنك يجب أن تحدد الترميز المناسب والوساطة

نصائح أخرى

لا يمكنك إعداد مثيل مباشرة ل httpcontent، لأنه فئة مجردة.تحتاج إلى استخدام واحدة من الفئات الفرعية، اعتمادا على حاجتك.على الأرجح stringcontent، والتي تتيح لك تعيين قيمة السلسلة للاستجابة، والترميز، ونوع الوسائط في المنشئ: http://msdn.microsoft.com/en-us/library/system.net.http.stringcontent.aspx

الإجابة من كيف أقوم بإعداد httpcontent لمعلمة HTTPClient postasync الثانية؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top