gpt4 book ai didi

asp.net - 将 JSON 发布到 Web 服务 "Invalid JSON Primitive"

转载 作者:行者123 更新时间:2023-12-04 06:27:58 25 4
gpt4 key购买 nike

我一直在寻找解决此问题的方法数小时,但找不到任何可以解决我的问题的方法。我收到 Invalid JSON Primitive每当我尝试通过 HTTP Get 将带有字符串值 (NSString) 的 URL 发送到我的服务器时。

我的代码:
Client Side Obj-C

- (void) createRequest: (NSString*)urlFormatted {

NSURL *url = [NSURL URLWithString: urlFormatted];
NSMutableURLRequest *request =[NSMutableURLRequest requestWithURL: url];

[request setHTTPMethod:@"GET"];
[request setValue:@"application/json; charset=UTF-8" forHTTPHeaderField:@"Content-Type"];
_webData = [[NSMutableData data] retain];
_connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
}


-(void) authenticate:(NSString*) userName password:(NSString*)password
{
NSString*url = @"http://service.example.com/service.asmx/Test?test1=hi";
[self createRequest:url];
[url release];
}
Server Side C#
这不起作用。每当我有一个字符串作为参数时,我就会收到消息,
Invalid JSON Primitive例如
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public string Test(string test1)
{
return "Ok."; // For testing purposes, just return a string.
}

然而,这工作正常。 (显然,如果我将 test1 参数更改为整数)
[ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)]
public string Test(int test1)
{
return "Ok."; // For testing purposes, just return a string.
}

我读过的所有内容都指向我确保我拥有 application/json设置 - 它是。每当我 不要使用字符串 在我的网址中,一切都很好。我不明白为什么这不起作用。对我来说,这看起来不像是编码问题。有任何想法吗?

最佳答案

您需要将字符串括在双引号内,即 URL 应该是

http://service.example.com/service.asmx/Test?test1="hi"

关于asp.net - 将 JSON 发布到 Web 服务 "Invalid JSON Primitive",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5810999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com