質問編集履歴

1

Objective-Cでテストした結果を追記しました。

2017/04/07 09:05

投稿

otaota
otaota

スコア30

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
1
  ###前提・実現したいこと
2
2
 
3
- とあるAPIで、指定されたURLにxml文字列をPOSTしてというものがあり、
3
+ とあるAPIで、指定されたURLにxml文字列をPOSTするというものがあり、
4
4
 
5
5
  Xamarin.formsで実装しているのですが、期待した結果が得られず困っています。
6
6
 
@@ -60,11 +60,11 @@
60
60
 
61
61
  ###試したこと
62
62
 
63
- ChromeのAdvanced REST clientで、Raw payloadに送りたいxml文字列を直接コピペし、POST送信した時は、期待した動作をすることは確認しています。
63
+ ChromeのAdvanced REST clientというツールで、Raw payloadに送りたいxml文字列を直接コピペし、同じURLへPOST送信した時は、期待した動作をすることは確認しています。
64
-
65
-
66
-
64
+
65
+
66
+
67
- 送信先を自前のサーバー上の
67
+ また、送信先を自前のサーバー上の
68
68
 
69
69
  ```
70
70
 
@@ -138,7 +138,7 @@
138
138
 
139
139
 
140
140
 
141
- ちなみに、Header情報のみのPOST通信は
141
+ ちなみに、別件ですが、bodyをともなわないHeader情報のみのPOST通信は
142
142
 
143
143
  ```
144
144
 
@@ -176,6 +176,30 @@
176
176
 
177
177
 
178
178
 
179
+ さらに、試しにObjective-Cで同様のことをしたらどうなるか試してみました。
180
+
181
+ ```
182
+
183
+ NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL:url];
184
+
185
+ request.HTTPMethod = @"POST";
186
+
187
+ NSString *body = [NSString stringWithFormat:xmlstr];
188
+
189
+ request.HTTPBody = [body dataUsingEncoding:NSUTF8StringEncoding];
190
+
191
+ NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
192
+
193
+
194
+
195
+ ```
196
+
197
+ というコードで期待通りの動作をしました。
198
+
199
+ なので、アプリだからというわけではなく、C#でのbodyの設定の仕方の問題ではないかと判断しています。
200
+
201
+
202
+
179
203
  ###補足情報(言語/FW/ツール等のバージョンなど)
180
204
 
181
205
  Xamarin 6.2(build 1829)