我明确指定了一个POST,我没有在Request中看到post数据,而且更多的指定它有一个OPTIONS.
响应应该是HTML,以表格格式指定匹配用户到Query.我试图发布和阅读html来创建一个自动完成输入框.
这个Jquery代码:
$.post('https://internal.company.com/data/displayUserList',
{ Email: "", Name: "%GEORGE%"},
function(responseText, textStatus) {
console.log("Response:\n" + responseText + textStatus)
}
);
Run Code Online (Sandbox Code Playgroud)
FireBug1.6.1捕获的请求(Firefox)
OPTIONS /data/displayUserList HTTP/1.1
Host: internal.company.com
User-Agent: Mozilla/5.0 Firefox/3.6.8
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
Keep-Alive: 115
Connection: keep-alive
Origin: null
Access-Control-Request-Method: POST
Run Code Online (Sandbox Code Playgroud) 基本上,我有一个asp.net ajax启用的usercontrol,现在我只想返回一个简单的字符串值,用于我在ajax请求完成后触发的一些js.
我一直在使用endrequest方法,我已经设置了这个方法用于异常处理,它工作正常.但是没有办法简单地返回字符串值吗?
首先,我认为我可以通过Response.Write(); 但args.get_response()并不喜欢当你这么做时 - 有人能指出我正确的方向吗?
谢谢!
我有RESTEasy(JAX-RS)服务器,有大约60个服务(到目前为止).我想通过服务器构建时间自动为提供者调用者注入一个自定义响应头:X-BuildTime: 20100335.1130.
有没有一种简单的方法可以在不修改我的每项服务的情况下完成
我试图使用实现一类org.jboss.resteasy.spi.interception.PostProcessInterceptor带注解@Provider和@ServerInterceptor,但我无法弄清楚如何修改传递到我的ServerResponse postProcess()方法.
我希望可以帮助我解决文件创建/响应问题.我知道如何创建和保存文件.我知道如何通过ServletOutputStream将该文件发送回用户.
但我需要的是创建一个文件,而不是将其保存在磁盘上,然后通过ServletOutputStream发送该文件.
上面的代码解释了我所拥有的部分.任何帮助赞赏.提前致谢.
// This Creates a file
//
String text = "These days run away like horses over the hill";
File file = new File("MyFile.txt");
Writer writer = new BufferedWriter(new FileWriter(file));
writer.write(text);
writer.close();
// Missing link goes here
//
// This sends file to browser
//
InputStream inputStream = null;
inputStream = new FileInputStream("C:\\MyFile.txt");
byte[] buffer = new byte[8192];
ByteArrayOutputStream baos = new ByteArrayOutputStream();
int bytesRead;
while ( (bytesRead = inputStream.read(buffer)) != -1)
baos.write(buffer, 0, bytesRead);
response.setContentType("text/html");
response.addHeader("Content-Disposition", "attachment; …Run Code Online (Sandbox Code Playgroud) 当我从Android使用soap Web服务时,我想在输出字符串中显示结果,如何将该输入流转换为Sting?
package com.venkattt.pack;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.SocketException;
import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapPrimitive;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.AndroidHttpTransport;
import org.ksoap2.transport.HttpTransportSE;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import android.app.Activity;
import android.os.Bundle;
public class SoapWebservicesExampleActivity extends Activity {
/** Called when the activity is first created. */
final String NAMESPACE = "urn:sap-com:document:sap:soap:functions:mc-style";
final String URL = "http://**********:8000/sap/bc/srt/wsdl/srvc_14DAE9C8D79F1EE196F1FC6C6518A345/wsdl11/allinone/ws_policy/document?sap-client=800&sap-user=************&sap-password=*********";
final String METHOD_NAME = "Z_GET_CUST_GEN";
final String SOAP_ACTION = "urn:sap-com:document:sap:soap:functions:mc-style/Z_GET_CUST_GEN";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SoapObject request = new SoapObject(NAMESPACE, …Run Code Online (Sandbox Code Playgroud) 我已经google了很多搜索我的问题的答案没有运气所以,让我们尝试,如果别人可以帮助我.
在进行一些验证后,我有一个Web Api 2操作来注册用户.如果一切正常,它将返回序列化用户,如果没有,则返回BadRequest响应中发送的错误消息.
另一方面,我有一个WPF客户端调用API进行响应.
我的问题是我无法得到错误发送的原因,客户端只是得到Bad Request错误消息.
这是代码的一部分:
Web Api动作:
public async Task<IHttpActionResult> AddUser(NewUserDTO {
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
if (!model.IdCliente.HasValue)
{
ModelState.AddModelError("", "No existe el cliente");
return BadRequest(ModelState);
}
// do save stuff
return Ok(TheModelFactory.Create(user));
}
Run Code Online (Sandbox Code Playgroud)客户端功能:
public async Task<ApplicationUserDTO> AddUser(NewUserDTO dto) {
using (var client = new HttpClient()) {
client.BaseAddress = new Uri(_urlBase);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", Token);
HttpContent content = new StringContent(JsonConvert.SerializeObject(dto));
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
HttpResponseMessage responseMessage = await client.PostAsync("api/accounts/AddUser", content); …Run Code Online (Sandbox Code Playgroud)我正在重定向到我的asp.net应用程序中的一个页面,使用该页面传递url中的参数.
HttpApplication app = (HttpApplication) sender;
HttpResponse response = app.Context.Response;
app.Response.Redirect("~/auth/SignOn.aspx?capath=" + capath);
Run Code Online (Sandbox Code Playgroud)
有没有办法发送执行或直接到该页面并传递参数,而不在网址中显示它?谢谢.
我尝试发送这两个请求,但我只得到标题中列出的错误作为响应.我对谷歌服务器的两个网络请求是这样的:
HttpClient http = new HttpClient();
HttpResponseMessage response = await http.GetAsync("https://accounts.google.com/o/oauth2/token?code="+localSettings.Values["AccessKey"]+"&client_id=XX-XXXXXXXXXX.apps.googleusercontent.com&client_secret=XXXXX-XXXX&redirect_uri=http://localhost/oauth2callback&grant_type=authorization_code");
//response.EnsureSuccessStatusCode();
Debug.WriteLine(response.ToString());
HttpResponseMessage response1 = await http.GetAsync("https://content.googleapis.com/youtube/v3/subscriptions?part=id&maxResults=10&mine=true&key="+localSettings.Values["AccessKey"]);
Debug.WriteLine(response1.ToString());
Run Code Online (Sandbox Code Playgroud)
我从调试器获得以下输出:
StatusCode: 405, ReasonPhrase: '', Version: 2.0, Content: System.Net.Http.StreamContent, Headers:
{
server: GSE
alt-svc: quic=":443"; p="1"; ma=604800
cache-control: max-age=0, private
accept-ranges: none
date: Tue, 29 Sep 2015 16:05:03 GMT
x-frame-options: SAMEORIGIN
vary: Accept-Encoding
x-content-type-options: nosniff
alternate-protocol: 443:quic,p=1
x-xss-protection: 1; mode=block
content-type: application/json
expires: Tue, 29 Sep 2015 16:05:03 GMT
}
StatusCode: 400, ReasonPhrase: '', Version: 2.0, Content: System.Net.Http.StreamContent, Headers:
{
server: …Run Code Online (Sandbox Code Playgroud)我正在使用 AWS sdk 开发基于 SQS 的队列发布订阅。
在非常基本的原型中,我将消息同时推送到我已经创建的队列中。但是,我如何确定我的消息被推送到队列中?
无论出于何种原因,推送的消息在此过程中都不会失败的保证是什么?
Amazon API 查询提供具有与该特定发送消息请求关联的 RequestID 的 ResponseMetadata。得到它是否足以肯定地确认将消息推送到 Queue ?
String requestId = sqs.sendMessage(request).getSdkResponseMetadata().getRequestId();
Run Code Online (Sandbox Code Playgroud)
Amazon sendmessage 请求是否没有提供带有 Http 代码的响应正文?
在我的Django项目中,我需要在我的视图中将一些数据发送/发布到第三方URL,并重定向到它提供的网页.例如,我可以简单地做一些事情
class TestView(TemplateView):
def get(self, request, *args, **kwargs):
data = {
'order_id': 88888,
'subject': 'haha',
'rn_check': 'F',
'app_pay': 'T',
}
url = 'http://some-third-party-api-url?order_id=88888&subject=haha&...'
return HttpResponseRedirect(url)
Run Code Online (Sandbox Code Playgroud)
但是我想将这个第三方api用作包装的SDK,比如
class TestView(TemplateView):
def get(self, request, *args, **kwargs):
from sucre.alipay_sdk.base import Alipay
from sucre.alipay_sdk import alipay_config
from django.http import HttpResponse
alipay = Alipay(alipay_config)
data = {
'order_id': 88888,
'subject': 'haha',
'rn_check': 'F',
'app_pay': 'T',
}
'''alipay api is wrapped in a sdk'''
'''and return a requests.models.Response instance'''
result = alipay.api('pay', data)
return HttpResponse(result)
Run Code Online (Sandbox Code Playgroud)
和api代码:
def …Run Code Online (Sandbox Code Playgroud) response ×10
c# ×3
ajax ×2
asp.net ×2
java ×2
web-services ×2
amazon-sqs ×1
android ×1
api ×1
bad-request ×1
django ×1
http-error ×1
http-headers ×1
httprequest ×1
httpresponse ×1
inputstream ×1
io ×1
jax-rs ×1
jquery ×1
options ×1
outputstream ×1
parameters ×1
post ×1
python ×1
redirect ×1
resteasy ×1
servlets ×1
string ×1